TPTP Problem File: SLH0176^1.p

View Solutions - Solve Problem

%------------------------------------------------------------------------------
% File     : SLH0000^1 : TPTP v8.2.0. Released v8.2.0.
% Domain   : Archive of Formal Proofs
% Problem  :
% Version  : Especial.
% English  :

% Refs     : [Des23] Desharnais (2023), Email to Geoff Sutcliffe
% Source   : [Des23]
% Names    : FSM_Tests/0040_Distinguishability/prob_00314_016784__19545360_1 [Des23]

% Status   : Theorem
% Rating   : ? v8.2.0
% Syntax   : Number of formulae    : 2454 ( 565 unt;1198 typ;   0 def)
%            Number of atoms       : 3809 (2067 equ;   0 cnn)
%            Maximal formula atoms :   14 (   3 avg)
%            Number of connectives : 16922 ( 999   ~;  58   |; 390   &;13620   @)
%                                         (   0 <=>;1855  =>;   0  <=;   0 <~>)
%            Maximal formula depth :   29 (   8 avg)
%            Number of types       :  279 ( 278 usr)
%            Number of type conns  : 2730 (2730   >;   0   *;   0   +;   0  <<)
%            Number of symbols     :  923 ( 920 usr;  92 con; 0-5 aty)
%            Number of variables   : 5025 ( 599   ^;4040   !; 386   ?;5025   :)
% SPC      : TH0_THM_EQU_NAR

% Comments : This file was generated by Isabelle (most likely Sledgehammer)
%            2023-01-19 11:28:11.156
%------------------------------------------------------------------------------
% Could-be-implicit typings (278)
thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    option4698682890252243502tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J_Mt__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc7046815421957522245tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc7503123379815984105tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc5690179691541610472tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc2887264429716469285tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc4854357505245854674tion_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    option618564342796057132tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    list_P3731511166663127148tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc1981356485087006182tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc5304465490986466195tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc1577143314875622951tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc8548937483218977916tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc5245323578580934439tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc7482660301195889802tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc1320982846156868013tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    list_P900065661572532781tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    set_Pr6758128758281331781tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_Pr2214081342615893255tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J_J,type,
    set_se8814638777607770899tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J_J,type,
    set_se9107620629761222868tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc2472489873198069605tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc1996521829013145895tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    set_li6676467283686695603tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    set_li3627933069276137716tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    list_P8071961135100849747tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    list_P5222580120286553364tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__FSM____Impl__Ofsm____impl_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc5865029215095210593tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc289958156944510285tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc1589689361865741454tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    fsm_Pr7472501486718762121tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_Pr686560580885001990tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    set_Pr1247259497978818444tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc1273266500412711078tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc5162482176405216038tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc7910999448953895980tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    set_se1202729586923980559tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    set_li2956804489699321647tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc1667262785325640619tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    set_Pr562290946369674325tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    set_Pr6196706626119988167od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    set_Pr7066209803171061385od_b_c: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    option2591598976854080940od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J_Mt__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    produc5559707038353031495od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    list_P794930430897013583tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    set_Pr5758844192829797349tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_Pr6377393035488738089tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    fsm_Pr4012998041403890378tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    set_se7211338757780864631tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    set_se4352772351202092600tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    set_se1494205944623320569tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc8814755222083049077tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc132672195601450727od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc524227702253089449od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    produc8789943477816147302od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_Pr5866527154223513677tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc460604280026033285tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc3311688455941821897tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    set_li6157365129634928023tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    set_li843069166926712280tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    set_li4752145241073272345tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_Pr2970463333272939373tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J_J_J_J,type,
    set_Pr8172789613847822510on_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_Pr4270194538194170542tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mtf__b_J_J,type,
    set_Pr2846766834318901024on_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc2638908751750687975tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc7767961656693973869tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J_J,type,
    set_se674536213102732308od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    list_P3314507606740035767tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    list_P2019770765010284920tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    list_P725033923280534073tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_op4555930566723375884tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc2416979464461413415od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc7121887867711435917tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J_J_J,type,
    produc2810007308471097934on_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc6417208493444336718tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mtf__b_J,type,
    produc4450879219090502080on_a_b: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    list_l7195309243935277682tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_li2036598085816368716tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    list_s520338325785207756tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_se8608509251338906790tion_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    option1037594673493148507od_b_c: $tType ).

thf(ty_n_t__FSM__Ofsm_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    fsm_Pr5936464569842867211tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mtf__b_Mtf__c_J,type,
    fsm_Pr4084281153683398667_a_b_c: $tType ).

thf(ty_n_t__Set__Oset_I_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J_J,type,
    set_Pr1501335580822405837on_a_o: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    set_li4056004263698848820od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_I_062_Itf__c_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc2009451851958091931od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mt__Product____Type__Oprod_I_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J_J_J,type,
    produc1513024716730732301_nat_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc8324461677307386929tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc1044317059597677938tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc2987544478742744755tion_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    option5121868808592388652tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    list_P7785822056432494700tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    set_Pr3340741384720568086tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    set_Pr165121870232099142tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    set_Pr8610678188247801352od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    set_Pr6421828756912040462od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__FSM__Ofsm_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc1112982198792866279tion_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    list_P5750542147746484308od_b_c: $tType ).

thf(ty_n_t__Set__Oset_I_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J_J_J,type,
    set_Pr1259549870778335695on_a_o: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J_J,type,
    set_se691672095566444412od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J_J,type,
    set_se6059949474650966589od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J_J,type,
    set_se2204854816880712958od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc5196315925859433104tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    produc5914258100495482587od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    set_Pr2749707142568386532tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J_J,type,
    produc8665472906054291430on_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc4358133044230692790tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc1359548802814378470tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc8870028173696010152od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc744027765912188590od_b_c: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    fsm_c_1147223751206369699tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    fsm_b_8424555702684727970tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    fsm_a_6478515617308310433tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc6564011220051093454od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc5878855887281848999od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    set_li4044971772871157404od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    set_li7053753227538352605od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    set_li839162645350771998od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J_J,type,
    set_li1159382662694783132od_c_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_I_062_Itf__c_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    produc3027252292617403629od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_I_062_Itf__c_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    produc6452300523622238572od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mt__Product____Type__Oprod_I_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Nat__Onat_J_J,type,
    produc7741492234613171770_a_nat: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc7816210539016439438od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc6865984441117011460tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc8585254622362508682tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    set_Pr2152847514592699566tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    set_Pr4096074933737766383tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    set_Pr6039302352882833200tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J_J,type,
    set_Pr5995116110478890399on_a_b: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J_J,type,
    option2705129176160415764list_c: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J_J,type,
    option1746649724871612821list_b: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J_J,type,
    option788170273582809878list_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc1809316117265082669od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    list_P3846607621165011388od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    list_P4431940218174719357od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    list_P5017272815184427326od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J,type,
    list_P6327159017948738492od_c_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    list_P7987531494101635245od_b_c: $tType ).

thf(ty_n_t__FSM____Impl__Ofsm____impl_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    fSM_fs6691076384796814508tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    set_Pr2280573845676964823od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J,type,
    set_Pr8357624050790843030od_c_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    set_Pr794624490088963975od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__c_M_Eo_J_Mt__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__List__Olist_Itf__c_J_J_J,type,
    produc6143555577579660511list_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__b_M_Eo_J_Mt__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__List__Olist_Itf__b_J_J_J,type,
    produc4714985347897971870list_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__a_M_Eo_J_Mt__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__List__Olist_Itf__a_J_J_J,type,
    produc3286415118216283229list_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    option1172118982809801933tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc5906990243510977614tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc2511539949587082767tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc8339461692517963728tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J,type,
    produc2069690243886521791on_a_b: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    set_li3008808369820902797tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    set_se9080664490266814439tion_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J_J,type,
    option4956980342974022682list_c: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__c_J_J_J_J,type,
    option8042736584964017243list_c: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__c_J_J_J_J,type,
    option1905120790099235996list_c: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__b_J_J_J_J,type,
    option4119923275737773530list_b: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J_J,type,
    option7205679517727768091list_b: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__b_J_J_J_J,type,
    option1068063722862986844list_b: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__a_J_J_J_J,type,
    option3282866208501524378list_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__a_J_J_J_J,type,
    option6368622450491518939list_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J_J,type,
    option231006655626737692list_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    list_P2455479929925280777tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    set_Pr7646808907904093667tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J_J,type,
    produc3377663681186084425_nat_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J,type,
    option8962052423969831475od_c_a: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__b_Mtf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    fsm_b_7838053553752004874tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    fsm_Pr4082893179519573580tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J,type,
    fsm_op7083421644242023300tion_a: $tType ).

thf(ty_n_t__Set__Oset_I_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J_J,type,
    set_Pr1925890298611716300on_a_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc3984951373228771894od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc5321001993181466231od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc6657052613134160568od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc8036268780610582007od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J,type,
    produc2669932201312201782od_c_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc4272613772517093799od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J,type,
    produc8705137658845948622list_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J,type,
    produc6279590954955293903list_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J,type,
    produc3854044251064639184list_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__c_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc5747662315571815230od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    list_P2261792721279755821tion_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    set_Pr7585778909603769095tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    fsm_op2445473550699801768tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc1426679230291838083tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc7832705962415348043od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc6475121930738208726od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc2768647787938385943od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    set_Pr466284057286730479od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J,type,
    set_Pr272002107461315949od_c_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    set_Pr1802334677239424816od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    set_Pr3138385297192119153od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mtf__b_J_J,type,
    set_Pr2246819283840396830_b_c_b: $tType ).

thf(ty_n_t__Set__Oset_I_062_It__Option__Ooption_Itf__a_J_M_062_It__Option__Ooption_Itf__a_J_M_Eo_J_J_J,type,
    set_op1042331080186719566on_a_o: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__c_M_062_Itf__c_M_Eo_J_J_Mt__List__Olist_Itf__c_J_J,type,
    produc5337753222811372479list_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__b_M_062_Itf__b_M_Eo_J_J_Mt__List__Olist_Itf__b_J_J,type,
    produc5185152304234826110list_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__a_M_062_Itf__a_M_Eo_J_J_Mt__List__Olist_Itf__a_J_J,type,
    produc5032551385658279741list_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc3509355604313844263tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Nat__Onat_J,type,
    produc7513307434770584310_a_nat: $tType ).

thf(ty_n_t__Option__Ooption_It__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    option970444960630425614od_b_c: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__c_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    fsm_c_2940947492383665124tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__b_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    fsm_b_4645169375850535651tion_a: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__a_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    fsm_a_6349391259317406178tion_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc2271636064823979023od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J,type,
    produc2133359284458116493od_c_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc2911076365155795152od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc3550516665487611281od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mtf__b_J,type,
    produc8127812668234276542_b_c_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__List__Olist_Itf__c_J_J,type,
    produc7985223085803476903list_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__List__Olist_Itf__b_J_J,type,
    produc3963297410138542439list_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__List__Olist_Itf__a_J_J,type,
    produc9164743771328383783list_a: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    list_l8907847357763382004od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    set_li6436108459499378894od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    list_s6668505552993648206od_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    set_se3344102371033692456od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__c_M_Eo_J_Mt__List__Olist_Itf__c_J_J,type,
    produc1038177369770814398list_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__b_M_Eo_J_Mt__List__Olist_Itf__b_J_J,type,
    produc8914622519208346940list_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_I_062_Itf__a_M_Eo_J_Mt__List__Olist_Itf__a_J_J,type,
    produc7567695631791103674list_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mtf__a_J,type,
    produc7386240147096006850_b_c_a: $tType ).

thf(ty_n_t__FSM__Ofsm_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mtf__b_Mtf__c_J,type,
    fsm_Pr8946560376811747725_c_b_c: $tType ).

thf(ty_n_t__Set__Oset_I_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J_J,type,
    set_Pr5299558430686336203_b_c_o: $tType ).

thf(ty_n_t__Option__Ooption_It__Set__Oset_It__Option__Ooption_Itf__a_J_J_J,type,
    option_set_option_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    option4716579502443089070od_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J,type,
    produc2580600513627454253list_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J,type,
    produc1021604436286309741list_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J,type,
    produc8685980395799941037list_a: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__c_Mtf__c_J_J,type,
    list_P267710562049004973od_c_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    list_P903359562653991662od_b_c: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__b_J_J,type,
    list_P832325522607645677od_b_b: $tType ).

thf(ty_n_t__List__Olist_It__Product____Type__Oprod_Itf__a_Mtf__a_J_J,type,
    list_P1396940483166286381od_a_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__c_Mtf__c_J_J,type,
    set_Product_prod_c_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__c_Mtf__a_J_J,type,
    set_Product_prod_c_a: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    set_Product_prod_b_c: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__b_J_J,type,
    set_Product_prod_b_b: $tType ).

thf(ty_n_t__Set__Oset_It__Product____Type__Oprod_Itf__a_Mtf__a_J_J,type,
    set_Product_prod_a_a: $tType ).

thf(ty_n_t__Set__Oset_I_062_Itf__b_M_062_Itf__c_M_Eo_J_J_J,type,
    set_b_c_o: $tType ).

thf(ty_n_t__Option__Ooption_It__Option__Ooption_Itf__a_J_J,type,
    option_option_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J,type,
    product_prod_nat_a: $tType ).

thf(ty_n_t__List__Olist_It__Option__Ooption_Itf__a_J_J,type,
    list_option_a: $tType ).

thf(ty_n_t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    set_option_a: $tType ).

thf(ty_n_t__Option__Ooption_It__Set__Oset_Itf__c_J_J,type,
    option_set_c: $tType ).

thf(ty_n_t__Option__Ooption_It__Set__Oset_Itf__b_J_J,type,
    option_set_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mtf__c_J,type,
    product_prod_c_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__c_Mtf__a_J,type,
    product_prod_c_a: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    product_prod_b_c: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__b_Mtf__b_J,type,
    product_prod_b_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mtf__b_J,type,
    product_prod_a_b: $tType ).

thf(ty_n_t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    product_prod_a_a: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_Itf__c_J_J,type,
    list_list_c: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_Itf__b_J_J,type,
    list_list_b: $tType ).

thf(ty_n_t__List__Olist_It__List__Olist_Itf__a_J_J,type,
    list_list_a: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_Itf__c_J_J,type,
    set_list_c: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_Itf__b_J_J,type,
    set_list_b: $tType ).

thf(ty_n_t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    set_list_a: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_Itf__c_J_J,type,
    list_set_c: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_Itf__b_J_J,type,
    list_set_b: $tType ).

thf(ty_n_t__List__Olist_It__Set__Oset_Itf__a_J_J,type,
    list_set_a: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_Itf__c_J_J,type,
    set_set_c: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_Itf__b_J_J,type,
    set_set_b: $tType ).

thf(ty_n_t__Set__Oset_It__Set__Oset_Itf__a_J_J,type,
    set_set_a: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__c_Mtf__b_Mtf__c_J,type,
    fsm_c_b_c: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__b_Mtf__b_Mtf__c_J,type,
    fsm_b_b_c: $tType ).

thf(ty_n_t__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J,type,
    fsm_a_b_c: $tType ).

thf(ty_n_t__Set__Oset_I_062_Itf__c_M_Eo_J_J,type,
    set_c_o: $tType ).

thf(ty_n_t__Set__Oset_I_062_Itf__b_M_Eo_J_J,type,
    set_b_o: $tType ).

thf(ty_n_t__Set__Oset_I_062_Itf__a_M_Eo_J_J,type,
    set_a_o: $tType ).

thf(ty_n_t__Option__Ooption_Itf__c_J,type,
    option_c: $tType ).

thf(ty_n_t__Option__Ooption_Itf__b_J,type,
    option_b: $tType ).

thf(ty_n_t__Option__Ooption_Itf__a_J,type,
    option_a: $tType ).

thf(ty_n_t__List__Olist_Itf__c_J,type,
    list_c: $tType ).

thf(ty_n_t__List__Olist_Itf__b_J,type,
    list_b: $tType ).

thf(ty_n_t__List__Olist_Itf__a_J,type,
    list_a: $tType ).

thf(ty_n_t__Set__Oset_Itf__c_J,type,
    set_c: $tType ).

thf(ty_n_t__Set__Oset_Itf__b_J,type,
    set_b: $tType ).

thf(ty_n_t__Set__Oset_Itf__a_J,type,
    set_a: $tType ).

thf(ty_n_t__Set__Oset_I_Eo_J,type,
    set_o: $tType ).

thf(ty_n_t__Nat__Onat,type,
    nat: $tType ).

thf(ty_n_tf__c,type,
    c: $tType ).

thf(ty_n_tf__b,type,
    b: $tType ).

thf(ty_n_tf__a,type,
    a: $tType ).

% Explicit typings (920)
thf(sy_c_Complete__Lattices_OSup__class_OSup_001_062_It__Option__Ooption_Itf__a_J_M_062_It__Option__Ooption_Itf__a_J_M_Eo_J_J,type,
    comple3597892711274245467on_a_o: set_op1042331080186719566on_a_o > option_a > option_a > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J,type,
    comple4014415058863176682on_a_o: set_Pr1501335580822405837on_a_o > produc1359548802814378470tion_a > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J_J,type,
    comple6110485271733551708on_a_o: set_Pr1259549870778335695on_a_o > product_prod_b_c > produc3509355604313844263tion_a > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J,type,
    comple4688208727692891368_b_c_o: set_Pr5299558430686336203_b_c_o > product_prod_b_c > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001_062_Itf__a_M_Eo_J,type,
    complete_Sup_Sup_a_o: set_a_o > a > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001_062_Itf__b_M_062_Itf__c_M_Eo_J_J,type,
    comple1411054825784354266_b_c_o: set_b_c_o > b > c > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001_062_Itf__b_M_Eo_J,type,
    complete_Sup_Sup_b_o: set_b_o > b > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001_062_Itf__c_M_Eo_J,type,
    complete_Sup_Sup_c_o: set_c_o > c > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001_Eo,type,
    complete_Sup_Sup_o: set_o > $o ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    comple1007154728799465372tion_a: set_se1202729586923980559tion_a > set_li2956804489699321647tion_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    comple7848374485387887494tion_a: set_se1494205944623320569tion_a > set_li4752145241073272345tion_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    comple3939298411241327429tion_a: set_se4352772351202092600tion_a > set_li843069166926712280tion_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    comple30222337094767364tion_a: set_se7211338757780864631tion_a > set_li6157365129634928023tion_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    comple5323346925621198817tion_a: set_se9107620629761222868tion_a > set_li3627933069276137716tion_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    comple8371881140031756704tion_a: set_se8814638777607770899tion_a > set_li6676467283686695603tion_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    comple8646531781231401761od_b_c: set_se674536213102732308od_b_c > set_li4056004263698848820od_b_c ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    comple1949744809857736971od_b_c: set_se2204854816880712958od_b_c > set_li839162645350771998od_b_c ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    comple8164335392045317578od_b_c: set_se6059949474650966589od_b_c > set_li7053753227538352605od_b_c ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    comple5155553937378122377od_b_c: set_se691672095566444412od_b_c > set_li4044971772871157404od_b_c ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    comple929840322319422580tion_a: set_se9080664490266814439tion_a > set_Pr7585778909603769095tion_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    comple374960348819757235tion_a: set_se8608509251338906790tion_a > set_Pr165121870232099142tion_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    comple7928098250179550773od_b_c: set_se3344102371033692456od_b_c > set_Product_prod_b_c ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_Itf__a_J,type,
    comple2307003609928055243_set_a: set_set_a > set_a ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_Itf__b_J,type,
    comple2307003614231284044_set_b: set_set_b > set_b ).

thf(sy_c_Complete__Lattices_OSup__class_OSup_001t__Set__Oset_Itf__c_J,type,
    comple2307003618534512845_set_c: set_set_c > set_c ).

thf(sy_c_Distinguishability_Ofind__first__distinct__ofsm__table__no__check_001tf__a_001tf__b_001tf__c,type,
    find_f9101274620504551506_a_b_c: fsm_a_b_c > a > a > nat > nat ).

thf(sy_c_Distinguishability_Oselect__diverging__ofsm__table__io_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    select2355175884866336335_a_b_c: fsm_Pr4084281153683398667_a_b_c > produc1359548802814378470tion_a > produc1359548802814378470tion_a > nat > produc1981356485087006182tion_a ).

thf(sy_c_Distinguishability_Oselect__diverging__ofsm__table__io_001tf__a_001tf__b_001tf__c,type,
    select6043575893837601639_a_b_c: fsm_a_b_c > a > a > nat > produc1359548802814378470tion_a ).

thf(sy_c_FSM_OLS_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    lS_Pro9208888441041508234tion_a: fsm_Pr4012998041403890378tion_a > produc1359548802814378470tion_a > set_li3008808369820902797tion_a ).

thf(sy_c_FSM_OLS_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    lS_Pro735550389098649289tion_a: fsm_Pr7472501486718762121tion_a > produc1359548802814378470tion_a > set_li2036598085816368716tion_a ).

thf(sy_c_FSM_OLS_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    lS_Pro5608194163545659851_a_b_c: fsm_Pr4084281153683398667_a_b_c > produc1359548802814378470tion_a > set_li6436108459499378894od_b_c ).

thf(sy_c_FSM_OLS_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    lS_Pro4527773713195546892tion_a: fsm_Pr4082893179519573580tion_a > product_prod_b_c > set_li3008808369820902797tion_a ).

thf(sy_c_FSM_OLS_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    lS_Pro4505222411400483149_c_b_c: fsm_Pr8946560376811747725_c_b_c > product_prod_b_c > set_li6436108459499378894od_b_c ).

thf(sy_c_FSM_OLS_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    lS_a_o2632099069520436386tion_a: fsm_a_6349391259317406178tion_a > a > set_li3008808369820902797tion_a ).

thf(sy_c_FSM_OLS_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    lS_a_P1924925719573064673tion_a: fsm_a_6478515617308310433tion_a > a > set_li2036598085816368716tion_a ).

thf(sy_c_FSM_OLS_001tf__a_001tf__b_001tf__c,type,
    lS_a_b_c: fsm_a_b_c > a > set_li6436108459499378894od_b_c ).

thf(sy_c_FSM_OLS_001tf__b_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    lS_b_o4497386039063543075tion_a: fsm_b_4645169375850535651tion_a > b > set_li3008808369820902797tion_a ).

thf(sy_c_FSM_OLS_001tf__b_001tf__b_001tf__c,type,
    lS_b_b_c: fsm_b_b_c > b > set_li6436108459499378894od_b_c ).

thf(sy_c_FSM_OLS_001tf__c_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    lS_c_o6362673008606649764tion_a: fsm_c_2940947492383665124tion_a > c > set_li3008808369820902797tion_a ).

thf(sy_c_FSM_OLS_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    lS_c_P1605286371396159715tion_a: fsm_c_1147223751206369699tion_a > c > set_li2036598085816368716tion_a ).

thf(sy_c_FSM_OLS_001tf__c_001tf__b_001tf__c,type,
    lS_c_b_c: fsm_c_b_c > c > set_li6436108459499378894od_b_c ).

thf(sy_c_FSM_Oacyclic__paths__up__to__length_001tf__a_001tf__b_001tf__c,type,
    acycli3978232057192500090_a_b_c: fsm_a_b_c > a > nat > set_li1159382662694783132od_c_a ).

thf(sy_c_FSM_Oacyclic__paths__up__to__length_H_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    acycli3394033286235393522tion_a: list_P794930430897013583tion_a > option_a > ( option_a > set_Pr165121870232099142tion_a ) > set_option_a > nat > set_li2956804489699321647tion_a ).

thf(sy_c_FSM_Oacyclic__paths__up__to__length_H_001tf__a_001tf__b_001tf__c,type,
    acycli8838441729103940241_a_b_c: list_P6327159017948738492od_c_a > a > ( a > set_Pr272002107461315949od_c_a ) > set_a > nat > set_li1159382662694783132od_c_a ).

thf(sy_c_FSM_Oafter_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    after_612238547627635419tion_a: fsm_op2445473550699801768tion_a > option_a > list_P2261792721279755821tion_a > option_a ).

thf(sy_c_FSM_Oafter_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    after_2988595708946543287tion_a: fsm_op7083421644242023300tion_a > option_a > list_P2455479929925280777tion_a > option_a ).

thf(sy_c_FSM_Oafter_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    after_6806106828575809789tion_a: fsm_Pr4012998041403890378tion_a > produc1359548802814378470tion_a > list_P2261792721279755821tion_a > produc1359548802814378470tion_a ).

thf(sy_c_FSM_Oafter_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    after_4666548563309070908tion_a: fsm_Pr7472501486718762121tion_a > produc1359548802814378470tion_a > list_P7785822056432494700tion_a > produc1359548802814378470tion_a ).

thf(sy_c_FSM_Oafter_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    after_4736860933871809598_a_b_c: fsm_Pr4084281153683398667_a_b_c > produc1359548802814378470tion_a > list_P903359562653991662od_b_c > produc1359548802814378470tion_a ).

thf(sy_c_FSM_Oafter_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    after_6106094911294320318tion_a: fsm_Pr5936464569842867211tion_a > product_prod_b_c > list_P7785822056432494700tion_a > product_prod_b_c ).

thf(sy_c_FSM_Oafter_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    after_2478316435353686720_c_b_c: fsm_Pr8946560376811747725_c_b_c > product_prod_b_c > list_P903359562653991662od_b_c > product_prod_b_c ).

thf(sy_c_FSM_Oafter_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    after_4826890630637713429tion_a: fsm_a_6349391259317406178tion_a > a > list_P2261792721279755821tion_a > a ).

thf(sy_c_FSM_Oafter_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    after_6104971424356839764tion_a: fsm_a_6478515617308310433tion_a > a > list_P7785822056432494700tion_a > a ).

thf(sy_c_FSM_Oafter_001tf__a_001tf__b_001tf__c,type,
    after_a_b_c: fsm_a_b_c > a > list_P903359562653991662od_b_c > a ).

thf(sy_c_FSM_Oafter_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    after_5945151750268387285tion_a: fsm_b_8424555702684727970tion_a > b > list_P7785822056432494700tion_a > b ).

thf(sy_c_FSM_Oafter_001tf__b_001tf__b_001tf__c,type,
    after_b_b_c: fsm_b_b_c > b > list_P903359562653991662od_b_c > b ).

thf(sy_c_FSM_Oafter_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    after_5785332076179934806tion_a: fsm_c_1147223751206369699tion_a > c > list_P7785822056432494700tion_a > c ).

thf(sy_c_FSM_Oafter_001tf__c_001tf__b_001tf__c,type,
    after_c_b_c: fsm_c_b_c > c > list_P903359562653991662od_b_c > c ).

thf(sy_c_FSM_Oafter__rel_001tf__a_001tf__b_001tf__c,type,
    after_rel_a_b_c: produc5914258100495482587od_b_c > produc5914258100495482587od_b_c > $o ).

thf(sy_c_FSM_Ocompletely__specified_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    comple2766019480588710345tion_a: fsm_op7083421644242023300tion_a > $o ).

thf(sy_c_FSM_Ocompletely__specified_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    comple4235893503568177297tion_a: fsm_Pr4082893179519573580tion_a > $o ).

thf(sy_c_FSM_Ocompletely__specified_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    comple2505282542999263186_c_b_c: fsm_Pr8946560376811747725_c_b_c > $o ).

thf(sy_c_FSM_Ocompletely__specified_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    comple4022182702085593383tion_a: fsm_a_6349391259317406178tion_a > $o ).

thf(sy_c_FSM_Ocompletely__specified_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    comple6566413409502449254tion_a: fsm_a_6478515617308310433tion_a > $o ).

thf(sy_c_FSM_Ocompletely__specified_001tf__a_001tf__b_001tf__c,type,
    comple6900478119722646120_a_b_c: fsm_a_b_c > $o ).

thf(sy_c_FSM_Ocompletely__specified_001tf__b_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    comple5887469671628700072tion_a: fsm_b_4645169375850535651tion_a > $o ).

thf(sy_c_FSM_Ocompletely__specified_001tf__b_001tf__b_001tf__c,type,
    comple3273324698056001001_b_b_c: fsm_b_b_c > $o ).

thf(sy_c_FSM_Ocompletely__specified_001tf__c_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    comple7752756641171806761tion_a: fsm_c_2940947492383665124tion_a > $o ).

thf(sy_c_FSM_Ocompletely__specified_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    comple6246774061325544296tion_a: fsm_c_1147223751206369699tion_a > $o ).

thf(sy_c_FSM_Ocompletely__specified_001tf__c_001tf__b_001tf__c,type,
    comple8869543313244131690_c_b_c: fsm_c_b_c > $o ).

thf(sy_c_FSM_Ocompletely__specified__state_001tf__a_001tf__b_001tf__c,type,
    comple2039557650379672579_a_b_c: fsm_a_b_c > a > $o ).

thf(sy_c_FSM_Ocreate__fsm__from__sets_001tf__a_001tf__b_001tf__c,type,
    create3933655864275538163_a_b_c: a > set_a > set_b > set_c > set_Pr8357624050790843030od_c_a > fsm_a_b_c ).

thf(sy_c_FSM_Odefined__inputs_001tf__a_001tf__b_001tf__c,type,
    defined_inputs_a_b_c: fsm_a_b_c > a > set_b ).

thf(sy_c_FSM_Odefined__inputs_H_001tf__a_001tf__b_001tf__c,type,
    defined_inputs_a_b_c2: ( product_prod_a_b > set_Product_prod_c_a ) > set_b > a > set_b ).

thf(sy_c_FSM_Odefined__inputs__rel_001tf__a_001tf__b_001tf__c,type,
    define957965454157341091_a_b_c: produc7386240147096006850_b_c_a > produc7386240147096006850_b_c_a > $o ).

thf(sy_c_FSM_Odeterministic_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    determ8225413341608954561tion_a: fsm_op7083421644242023300tion_a > $o ).

thf(sy_c_FSM_Odistinguishes_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    distin149889238852854566tion_a: fsm_Pr4012998041403890378tion_a > produc1359548802814378470tion_a > produc1359548802814378470tion_a > list_P2261792721279755821tion_a > $o ).

thf(sy_c_FSM_Odistinguishes_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    distin3570841250611833445tion_a: fsm_Pr7472501486718762121tion_a > produc1359548802814378470tion_a > produc1359548802814378470tion_a > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Odistinguishes_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    distin3063819344349927783_a_b_c: fsm_Pr4084281153683398667_a_b_c > produc1359548802814378470tion_a > produc1359548802814378470tion_a > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Odistinguishes_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    distin4433053321772438503tion_a: fsm_Pr5936464569842867211tion_a > product_prod_b_c > product_prod_b_c > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Odistinguishes_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    distin2910207492170677481_c_b_c: fsm_Pr8946560376811747725_c_b_c > product_prod_b_c > product_prod_b_c > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Odistinguishes_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    distin2171398021799776318tion_a: fsm_a_6349391259317406178tion_a > a > a > list_P2261792721279755821tion_a > $o ).

thf(sy_c_FSM_Odistinguishes_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    distin2101305680231671677tion_a: fsm_a_6478515617308310433tion_a > a > a > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Odistinguishes_001tf__a_001tf__b_001tf__c,type,
    distinguishes_a_b_c: fsm_a_b_c > a > a > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Odistinguishes_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    distin1941486006143219198tion_a: fsm_b_8424555702684727970tion_a > b > b > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Odistinguishes_001tf__b_001tf__b_001tf__c,type,
    distinguishes_b_b_c: fsm_b_b_c > b > b > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Odistinguishes_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    distin1781666332054766719tion_a: fsm_c_1147223751206369699tion_a > c > c > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Odistinguishes_001tf__c_001tf__b_001tf__c,type,
    distinguishes_c_b_c: fsm_c_b_c > c > c > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Odoes__distinguish_001tf__a_001tf__b_001tf__c,type,
    does_d3309555387068894566_a_b_c: fsm_a_b_c > a > a > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Oh_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    h_opti4401739234194944175tion_a: fsm_op2445473550699801768tion_a > produc3509355604313844263tion_a > set_Pr7585778909603769095tion_a ).

thf(sy_c_FSM_Oh_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    h_opti6733590478887504523tion_a: fsm_op7083421644242023300tion_a > produc7832705962415348043od_b_c > set_Pr7585778909603769095tion_a ).

thf(sy_c_FSM_Oh_001tf__a_001tf__b_001tf__c,type,
    h_a_b_c: fsm_a_b_c > product_prod_a_b > set_Product_prod_c_a ).

thf(sy_c_FSM_Oh__from_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    h_from6817859510763986177tion_a: fsm_op7083421644242023300tion_a > option_a > set_Pr165121870232099142tion_a ).

thf(sy_c_FSM_Oh__from_001tf__a_001tf__b_001tf__c,type,
    h_from_a_b_c: fsm_a_b_c > a > set_Pr272002107461315949od_c_a ).

thf(sy_c_FSM_Oh__from__rel_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    h_from7910918433100979012tion_a: produc1112982198792866279tion_a > produc1112982198792866279tion_a > $o ).

thf(sy_c_FSM_Oh__obs_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    h_obs_1513062369990395059tion_a: fsm_op7083421644242023300tion_a > option_a > product_prod_b_c > option_a > option_option_a ).

thf(sy_c_FSM_Oh__obs_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    h_obs_5157205410614601465tion_a: fsm_Pr4012998041403890378tion_a > produc1359548802814378470tion_a > option_a > option_a > option5121868808592388652tion_a ).

thf(sy_c_FSM_Oh__obs_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    h_obs_2034362272866080824tion_a: fsm_Pr7472501486718762121tion_a > produc1359548802814378470tion_a > product_prod_b_c > produc3509355604313844263tion_a > option5121868808592388652tion_a ).

thf(sy_c_FSM_Oh__obs_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    h_obs_7784731882632891962_a_b_c: fsm_Pr4084281153683398667_a_b_c > produc1359548802814378470tion_a > b > c > option5121868808592388652tion_a ).

thf(sy_c_FSM_Oh__obs_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    h_obs_2762009199847384593tion_a: fsm_a_6349391259317406178tion_a > a > option_a > option_a > option_a ).

thf(sy_c_FSM_Oh__obs_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    h_obs_502279454451148624tion_a: fsm_a_6478515617308310433tion_a > a > product_prod_b_c > produc3509355604313844263tion_a > option_a ).

thf(sy_c_FSM_Oh__obs_001tf__a_001tf__b_001tf__c,type,
    h_obs_a_b_c: fsm_a_b_c > a > b > c > option_a ).

thf(sy_c_FSM_Oh__out_001tf__b_001tf__c_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    h_out_5634078515784846347tion_a: fsm_b_7838053553752004874tion_a > product_prod_b_c > set_Pr7585778909603769095tion_a ).

thf(sy_c_FSM_Oinitial_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    initia1364244426282539541tion_a: fsm_Pr4012998041403890378tion_a > produc1359548802814378470tion_a ).

thf(sy_c_FSM_Oinitial_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    initia7900160370904224596tion_a: fsm_Pr7472501486718762121tion_a > produc1359548802814378470tion_a ).

thf(sy_c_FSM_Oinitial_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    initia6916471901537514838_a_b_c: fsm_Pr4084281153683398667_a_b_c > produc1359548802814378470tion_a ).

thf(sy_c_FSM_Oinitial_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    initia5963972393380577581tion_a: fsm_a_6349391259317406178tion_a > a ).

thf(sy_c_FSM_Oinitial_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    initia4477412644359670380tion_a: fsm_a_6478515617308310433tion_a > a ).

thf(sy_c_FSM_Oinitial_001tf__a_001tf__b_001tf__c,type,
    initial_a_b_c: fsm_a_b_c > a ).

thf(sy_c_FSM_Oinputs_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    inputs391937407206093570tion_a: fsm_op7083421644242023300tion_a > set_Product_prod_b_c ).

thf(sy_c_FSM_Oinputs_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    inputs1861811430185560522tion_a: fsm_Pr4082893179519573580tion_a > set_option_a ).

thf(sy_c_FSM_Oinputs_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    inputs8027086868716563467_c_b_c: fsm_Pr8946560376811747725_c_b_c > set_b ).

thf(sy_c_FSM_Oinputs_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    inputs2713695130735606624tion_a: fsm_a_6349391259317406178tion_a > set_option_a ).

thf(sy_c_FSM_Oinputs_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    inputs9095006808714423967tion_a: fsm_a_6478515617308310433tion_a > set_Product_prod_b_c ).

thf(sy_c_FSM_Oinputs_001tf__a_001tf__b_001tf__c,type,
    inputs_a_b_c: fsm_a_b_c > set_b ).

thf(sy_c_FSM_Oinputs_001tf__b_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    inputs4578982100278713313tion_a: fsm_b_4645169375850535651tion_a > set_option_a ).

thf(sy_c_FSM_Oinputs_001tf__b_001tf__b_001tf__c,type,
    inputs_b_b_c: fsm_b_b_c > set_b ).

thf(sy_c_FSM_Oinputs_001tf__c_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    inputs6444269069821820002tion_a: fsm_c_2940947492383665124tion_a > set_option_a ).

thf(sy_c_FSM_Oinputs_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    inputs8775367460537519009tion_a: fsm_c_1147223751206369699tion_a > set_Product_prod_b_c ).

thf(sy_c_FSM_Oinputs_001tf__c_001tf__b_001tf__c,type,
    inputs_c_b_c: fsm_c_b_c > set_b ).

thf(sy_c_FSM_Oinputs__as__list_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    inputs1372579211786743033_a_b_c: fsm_Pr4084281153683398667_a_b_c > list_b ).

thf(sy_c_FSM_Oinputs__as__list_001tf__a_001tf__b_001tf__c,type,
    inputs_as_list_a_b_c: fsm_a_b_c > list_b ).

thf(sy_c_FSM_Ois__in__language_001tf__a_001tf__b_001tf__c,type,
    is_in_language_a_b_c: fsm_a_b_c > a > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Ois__in__language__rel_001tf__a_001tf__b_001tf__c,type,
    is_in_4296126181398531264_a_b_c: produc5914258100495482587od_b_c > produc5914258100495482587od_b_c > $o ).

thf(sy_c_FSM_Omaximal__prefix__in__language_001tf__a_001tf__b_001tf__c,type,
    maxima1559550560783484624_a_b_c: fsm_a_b_c > a > list_P903359562653991662od_b_c > list_P903359562653991662od_b_c ).

thf(sy_c_FSM_Omaximal__prefix__in__language__rel_001tf__a_001tf__b_001tf__c,type,
    maxima8135688396739918515_a_b_c: produc5914258100495482587od_b_c > produc5914258100495482587od_b_c > $o ).

thf(sy_c_FSM_Ominimal_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima1614543103880104311tion_a: fsm_Pr7472501486718762121tion_a > $o ).

thf(sy_c_FSM_Ominimal_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    minima6718774871783817849_a_b_c: fsm_Pr4084281153683398667_a_b_c > $o ).

thf(sy_c_FSM_Ominimal_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima8088008849206328569tion_a: fsm_Pr5936464569842867211tion_a > $o ).

thf(sy_c_FSM_Ominimal_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    minima2655950506785042427_c_b_c: fsm_Pr8946560376811747725_c_b_c > $o ).

thf(sy_c_FSM_Ominimal_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima7556218584719635087tion_a: fsm_a_6478515617308310433tion_a > $o ).

thf(sy_c_FSM_Ominimal_001tf__a_001tf__b_001tf__c,type,
    minimal_a_b_c: fsm_a_b_c > $o ).

thf(sy_c_FSM_Ominimal_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima7396398910631182608tion_a: fsm_b_8424555702684727970tion_a > $o ).

thf(sy_c_FSM_Ominimal_001tf__b_001tf__b_001tf__c,type,
    minimal_b_b_c: fsm_b_b_c > $o ).

thf(sy_c_FSM_Ominimal_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima7236579236542730129tion_a: fsm_c_1147223751206369699tion_a > $o ).

thf(sy_c_FSM_Ominimal_001tf__c_001tf__b_001tf__c,type,
    minimal_c_b_c: fsm_c_b_c > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima8288198102938997131tion_a: fsm_Pr7472501486718762121tion_a > produc1359548802814378470tion_a > produc1359548802814378470tion_a > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    minima7324227391617093261_a_b_c: fsm_Pr4084281153683398667_a_b_c > produc1359548802814378470tion_a > produc1359548802814378470tion_a > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima8693461369039603981tion_a: fsm_Pr5936464569842867211tion_a > product_prod_b_c > product_prod_b_c > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    minima7220721411496132623_c_b_c: fsm_Pr8946560376811747725_c_b_c > product_prod_b_c > product_prod_b_c > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima1077567848608395939tion_a: fsm_a_6478515617308310433tion_a > a > a > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001tf__a_001tf__b_001tf__c,type,
    minima243535863231358885_a_b_c: fsm_a_b_c > a > a > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima917748174519943460tion_a: fsm_b_8424555702684727970tion_a > b > b > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001tf__b_001tf__b_001tf__c,type,
    minima5839754478419489574_b_b_c: fsm_b_b_c > b > b > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    minima757928500431490981tion_a: fsm_c_1147223751206369699tion_a > c > c > list_P7785822056432494700tion_a > $o ).

thf(sy_c_FSM_Ominimally__distinguishes_001tf__c_001tf__b_001tf__c,type,
    minima2212601056752844455_c_b_c: fsm_c_b_c > c > c > list_P903359562653991662od_b_c > $o ).

thf(sy_c_FSM_Oobservable_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    observ5325737701211358028tion_a: fsm_op2445473550699801768tion_a > $o ).

thf(sy_c_FSM_Oobservable_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    observ1716698870131812264tion_a: fsm_op7083421644242023300tion_a > $o ).

thf(sy_c_FSM_Oobservable_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    observ8953468558471342318tion_a: fsm_Pr4012998041403890378tion_a > $o ).

thf(sy_c_FSM_Oobservable_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    observ4093451317186617389tion_a: fsm_Pr7472501486718762121tion_a > $o ).

thf(sy_c_FSM_Oobservable_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    observ6621331549010720559_a_b_c: fsm_Pr4084281153683398667_a_b_c > $o ).

thf(sy_c_FSM_Oobservable_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    observ3186572893111279216tion_a: fsm_Pr4082893179519573580tion_a > $o ).

thf(sy_c_FSM_Oobservable_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    observ7990565526433231279tion_a: fsm_Pr5936464569842867211tion_a > $o ).

thf(sy_c_FSM_Oobservable_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    observ2355048066641855153_c_b_c: fsm_Pr8946560376811747725_c_b_c > $o ).

thf(sy_c_FSM_Oobservable_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    observ7071744495117927942tion_a: fsm_a_6349391259317406178tion_a > $o ).

thf(sy_c_FSM_Oobservable_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    observ671438039871229253tion_a: fsm_a_6478515617308310433tion_a > $o ).

thf(sy_c_FSM_Oobservable_001tf__a_001tf__b_001tf__c,type,
    observable_a_b_c: fsm_a_b_c > $o ).

thf(sy_c_FSM_Oobservable_001tf__b_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    observ8937031464661034631tion_a: fsm_b_4645169375850535651tion_a > $o ).

thf(sy_c_FSM_Oobservable_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    observ511618365782776774tion_a: fsm_b_8424555702684727970tion_a > $o ).

thf(sy_c_FSM_Oobservable_001tf__b_001tf__b_001tf__c,type,
    observable_b_b_c: fsm_b_b_c > $o ).

thf(sy_c_FSM_Oobservable_001tf__c_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    observ1578946397349365512tion_a: fsm_c_2940947492383665124tion_a > $o ).

thf(sy_c_FSM_Oobservable_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    observ351798691694324295tion_a: fsm_c_1147223751206369699tion_a > $o ).

thf(sy_c_FSM_Oobservable_001tf__c_001tf__b_001tf__c,type,
    observable_c_b_c: fsm_c_b_c > $o ).

thf(sy_c_FSM_Ooutput__complete_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    output5441458310227093749tion_a: fsm_op2445473550699801768tion_a > $o ).

thf(sy_c_FSM_Ooutput__complete_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    output4318084302544301521tion_a: fsm_op7083421644242023300tion_a > $o ).

thf(sy_c_FSM_Ooutput__complete_001tf__a_001tf__b_001tf__c,type,
    output3834324022317553264_a_b_c: fsm_a_b_c > $o ).

thf(sy_c_FSM_Ooutputs_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    output6203870471248792805tion_a: fsm_op2445473550699801768tion_a > set_option_a ).

thf(sy_c_FSM_Ooutputs_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    output1347265331858639297tion_a: fsm_op7083421644242023300tion_a > set_option_a ).

thf(sy_c_FSM_Ooutputs_001tf__a_001tf__b_001tf__c,type,
    outputs_a_b_c: fsm_a_b_c > set_c ).

thf(sy_c_FSM_Ooutputs__as__list_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    output6342448897483057208_a_b_c: fsm_Pr4084281153683398667_a_b_c > list_c ).

thf(sy_c_FSM_Ooutputs__as__list_001tf__a_001tf__b_001tf__c,type,
    output4084235763626582864_a_b_c: fsm_a_b_c > list_c ).

thf(sy_c_FSM_Opaths__for__input_001tf__a_001tf__b_001tf__c,type,
    paths_6942934977415288259_a_b_c: fsm_a_b_c > a > list_b > set_li1159382662694783132od_c_a ).

thf(sy_c_FSM_Opaths__for__input_H_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    paths_1537389554444931003tion_a: ( option_a > set_Pr165121870232099142tion_a ) > list_P903359562653991662od_b_c > option_a > list_P794930430897013583tion_a > set_li2956804489699321647tion_a ).

thf(sy_c_FSM_Opaths__for__input_H_001t__Option__Ooption_Itf__a_J_001tf__a_001t__Option__Ooption_Itf__a_J,type,
    paths_3421422911137801637tion_a: ( option_a > set_Pr6039302352882833200tion_a ) > list_a > option_a > list_P725033923280534073tion_a > set_li4752145241073272345tion_a ).

thf(sy_c_FSM_Opaths__for__input_H_001t__Option__Ooption_Itf__a_J_001tf__b_001t__Option__Ooption_Itf__a_J,type,
    paths_335666669147807076tion_a: ( option_a > set_Pr4096074933737766383tion_a ) > list_b > option_a > list_P2019770765010284920tion_a > set_li843069166926712280tion_a ).

thf(sy_c_FSM_Opaths__for__input_H_001t__Option__Ooption_Itf__a_J_001tf__c_001t__Option__Ooption_Itf__a_J,type,
    paths_6473282464012588323tion_a: ( option_a > set_Pr2152847514592699566tion_a ) > list_c > option_a > list_P3314507606740035767tion_a > set_li6157365129634928023tion_a ).

thf(sy_c_FSM_Opaths__for__input_H_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    paths_7736527739743286123od_b_c: ( produc3509355604313844263tion_a > set_Pr4270194538194170542tion_a ) > list_b > produc3509355604313844263tion_a > list_P5222580120286553364tion_a > set_li3627933069276137716tion_a ).

thf(sy_c_FSM_Opaths__for__input_H_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    paths_7097087439411469994od_b_c: ( produc3509355604313844263tion_a > set_Pr2970463333272939373tion_a ) > list_c > produc3509355604313844263tion_a > list_P8071961135100849747tion_a > set_li6676467283686695603tion_a ).

thf(sy_c_FSM_Opaths__for__input_H_001tf__a_001tf__b_001tf__c,type,
    paths_6276656153717473370_a_b_c: ( a > set_Pr272002107461315949od_c_a ) > list_b > a > list_P6327159017948738492od_c_a > set_li1159382662694783132od_c_a ).

thf(sy_c_FSM_Opaths__for__input_H_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b,type,
    paths_1255429502677761074_b_c_b: ( c > set_Pr794624490088963975od_b_c ) > list_P903359562653991662od_b_c > c > list_P5750542147746484308od_b_c > set_li4056004263698848820od_b_c ).

thf(sy_c_FSM_Opaths__for__input_H_001tf__c_001tf__a_001tf__b,type,
    paths_1809804892356859164_c_a_b: ( c > set_Pr3138385297192119153od_b_c ) > list_a > c > list_P5017272815184427326od_b_c > set_li839162645350771998od_b_c ).

thf(sy_c_FSM_Opaths__for__input_H_001tf__c_001tf__b_001tf__b,type,
    paths_8245721347238958939_c_b_b: ( c > set_Pr1802334677239424816od_b_c ) > list_b > c > list_P4431940218174719357od_b_c > set_li7053753227538352605od_b_c ).

thf(sy_c_FSM_Opaths__for__input_H_001tf__c_001tf__c_001tf__b,type,
    paths_5458265765266282906_c_c_b: ( c > set_Pr466284057286730479od_b_c ) > list_c > c > list_P3846607621165011388od_b_c > set_li4044971772871157404od_b_c ).

thf(sy_c_FSM_Opaths__for__io_001tf__a_001tf__b_001tf__c,type,
    paths_for_io_a_b_c: fsm_a_b_c > a > list_P903359562653991662od_b_c > set_li1159382662694783132od_c_a ).

thf(sy_c_FSM_Opaths__for__io_H_001tf__a_001tf__b_001tf__c,type,
    paths_for_io_a_b_c2: ( product_prod_a_b > set_Product_prod_c_a ) > list_P903359562653991662od_b_c > a > list_P6327159017948738492od_c_a > set_li1159382662694783132od_c_a ).

thf(sy_c_FSM_Osingle__input_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    single3000559957900482993tion_a: fsm_op7083421644242023300tion_a > $o ).

thf(sy_c_FSM_Ostates_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    states3335001888204056489tion_a: fsm_op7083421644242023300tion_a > set_option_a ).

thf(sy_c_FSM_Ostates_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    states8609567504773501230tion_a: fsm_Pr7472501486718762121tion_a > set_Pr165121870232099142tion_a ).

thf(sy_c_FSM_Ostates_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    states8181870101050041648_a_b_c: fsm_Pr4084281153683398667_a_b_c > set_Pr165121870232099142tion_a ).

thf(sy_c_FSM_Ostates_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    states4804875911183523441tion_a: fsm_Pr4082893179519573580tion_a > set_Product_prod_b_c ).

thf(sy_c_FSM_Ostates_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    states327732041617776560tion_a: fsm_Pr5936464569842867211tion_a > set_Product_prod_b_c ).

thf(sy_c_FSM_Ostates_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b_001tf__c,type,
    states8981316748681014706_c_b_c: fsm_Pr8946560376811747725_c_b_c > set_Product_prod_b_c ).

thf(sy_c_FSM_Ostates_001tf__a_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    states8949780166273740551tion_a: fsm_a_6349391259317406178tion_a > set_a ).

thf(sy_c_FSM_Ostates_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    states483080441059632198tion_a: fsm_a_6478515617308310433tion_a > set_a ).

thf(sy_c_FSM_Ostates_001tf__a_001tf__b_001tf__c,type,
    states_a_b_c: fsm_a_b_c > set_a ).

thf(sy_c_FSM_Ostates_001tf__b_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    states1591695098962071432tion_a: fsm_b_4645169375850535651tion_a > set_b ).

thf(sy_c_FSM_Ostates_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    states323260766971179719tion_a: fsm_b_8424555702684727970tion_a > set_b ).

thf(sy_c_FSM_Ostates_001tf__b_001tf__b_001tf__c,type,
    states_b_b_c: fsm_b_b_c > set_b ).

thf(sy_c_FSM_Ostates_001tf__c_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    states3456982068505178121tion_a: fsm_c_2940947492383665124tion_a > set_c ).

thf(sy_c_FSM_Ostates_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    states163441092882727240tion_a: fsm_c_1147223751206369699tion_a > set_c ).

thf(sy_c_FSM_Ostates_001tf__c_001tf__b_001tf__c,type,
    states_c_b_c: fsm_c_b_c > set_c ).

thf(sy_c_FSM_Otransitions_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    transi3979659241729338265tion_a: fsm_op2445473550699801768tion_a > set_Pr5866527154223513677tion_a ).

thf(sy_c_FSM_Otransitions_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    transi3095157388973257333tion_a: fsm_op7083421644242023300tion_a > set_Pr6377393035488738089tion_a ).

thf(sy_c_FSM_Otransitions_001tf__a_001tf__b_001tf__c,type,
    transitions_a_b_c: fsm_a_b_c > set_Pr8357624050790843030od_c_a ).

thf(sy_c_FSM_Otransitions_001tf__b_001tf__c_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    transi1529600627604418555tion_a: fsm_b_7838053553752004874tion_a > set_Pr8172789613847822510on_a_b ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J,type,
    minus_8587600329092878448on_a_o: ( produc1359548802814378470tion_a > $o ) > ( produc1359548802814378470tion_a > $o ) > produc1359548802814378470tion_a > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J,type,
    minus_454401561809409902_b_c_o: ( product_prod_b_c > $o ) > ( product_prod_b_c > $o ) > product_prod_b_c > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_Itf__a_M_Eo_J,type,
    minus_minus_a_o: ( a > $o ) > ( a > $o ) > a > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_Itf__b_M_Eo_J,type,
    minus_minus_b_o: ( b > $o ) > ( b > $o ) > b > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001_062_Itf__c_M_Eo_J,type,
    minus_minus_c_o: ( c > $o ) > ( c > $o ) > c > $o ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Nat__Onat,type,
    minus_minus_nat: nat > nat > nat ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    minus_5375846548645262261od_b_c: set_li6436108459499378894od_b_c > set_li6436108459499378894od_b_c > set_li6436108459499378894od_b_c ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    minus_2047467904157042861tion_a: set_Pr165121870232099142tion_a > set_Pr165121870232099142tion_a > set_Pr165121870232099142tion_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    minus_6323455999294890031od_b_c: set_Product_prod_b_c > set_Product_prod_b_c > set_Product_prod_b_c ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_Itf__a_J,type,
    minus_minus_set_a: set_a > set_a > set_a ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_Itf__b_J,type,
    minus_minus_set_b: set_b > set_b > set_b ).

thf(sy_c_Groups_Ominus__class_Ominus_001t__Set__Oset_Itf__c_J,type,
    minus_minus_set_c: set_c > set_c > set_c ).

thf(sy_c_Groups_Oone__class_Oone_001t__Nat__Onat,type,
    one_one_nat: nat ).

thf(sy_c_Groups_Ozero__class_Ozero_001t__Nat__Onat,type,
    zero_zero_nat: nat ).

thf(sy_c_If_001t__Nat__Onat,type,
    if_nat: $o > nat > nat > nat ).

thf(sy_c_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    if_opt2424821917594415602tion_a: $o > option618564342796057132tion_a > option618564342796057132tion_a > option618564342796057132tion_a ).

thf(sy_c_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    if_opt6106225609937793522tion_a: $o > option5121868808592388652tion_a > option5121868808592388652tion_a > option5121868808592388652tion_a ).

thf(sy_c_If_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J_J,type,
    if_set5301400340663253090od_c_a: $o > set_li1159382662694783132od_c_a > set_li1159382662694783132od_c_a > set_li1159382662694783132od_c_a ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_It__Option__Ooption_Itf__a_J_M_062_It__Option__Ooption_Itf__a_J_M_Eo_J_J,type,
    inf_in5160421943901843420on_a_o: ( option_a > option_a > $o ) > ( option_a > option_a > $o ) > option_a > option_a > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J,type,
    inf_in2065502562373210281on_a_o: ( produc1359548802814378470tion_a > $o ) > ( produc1359548802814378470tion_a > $o ) > produc1359548802814378470tion_a > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J_J,type,
    inf_in30398731212321501on_a_o: ( product_prod_b_c > produc3509355604313844263tion_a > $o ) > ( product_prod_b_c > produc3509355604313844263tion_a > $o ) > product_prod_b_c > produc3509355604313844263tion_a > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J,type,
    inf_in7443460124908203175_b_c_o: ( product_prod_b_c > $o ) > ( product_prod_b_c > $o ) > product_prod_b_c > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_Itf__a_M_Eo_J,type,
    inf_inf_a_o: ( a > $o ) > ( a > $o ) > a > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_Itf__b_M_062_Itf__c_M_Eo_J_J,type,
    inf_inf_b_c_o: ( b > c > $o ) > ( b > c > $o ) > b > c > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_Itf__b_M_Eo_J,type,
    inf_inf_b_o: ( b > $o ) > ( b > $o ) > b > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001_062_Itf__c_M_Eo_J,type,
    inf_inf_c_o: ( c > $o ) > ( c > $o ) > c > $o ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    inf_in4978071631833541052od_b_c: set_li6436108459499378894od_b_c > set_li6436108459499378894od_b_c > set_li6436108459499378894od_b_c ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    inf_in7151386601871364341tion_a: set_Pr7585778909603769095tion_a > set_Pr7585778909603769095tion_a > set_Pr7585778909603769095tion_a ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    inf_in4293130732126176052tion_a: set_Pr165121870232099142tion_a > set_Pr165121870232099142tion_a > set_Pr165121870232099142tion_a ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    inf_in8411426679332095414od_b_c: set_Product_prod_b_c > set_Product_prod_b_c > set_Product_prod_b_c ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_Itf__a_J,type,
    inf_inf_set_a: set_a > set_a > set_a ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_Itf__b_J,type,
    inf_inf_set_b: set_b > set_b > set_b ).

thf(sy_c_Lattices_Oinf__class_Oinf_001t__Set__Oset_Itf__c_J,type,
    inf_inf_set_c: set_c > set_c > set_c ).

thf(sy_c_List_Oappend_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    append6969318523410456455tion_a: list_l7195309243935277682tion_a > list_l7195309243935277682tion_a > list_l7195309243935277682tion_a ).

thf(sy_c_List_Oappend_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    append6992831555715836169od_b_c: list_l8907847357763382004od_b_c > list_l8907847357763382004od_b_c > list_l8907847357763382004od_b_c ).

thf(sy_c_List_Oappend_001t__List__Olist_Itf__a_J,type,
    append_list_a: list_list_a > list_list_a > list_list_a ).

thf(sy_c_List_Oappend_001t__List__Olist_Itf__b_J,type,
    append_list_b: list_list_b > list_list_b > list_list_b ).

thf(sy_c_List_Oappend_001t__List__Olist_Itf__c_J,type,
    append_list_c: list_list_c > list_list_c > list_list_c ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    append7980291006836379842tion_a: list_P2261792721279755821tion_a > list_P2261792721279755821tion_a > list_P2261792721279755821tion_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    append8060689111879548644tion_a: list_P794930430897013583tion_a > list_P794930430897013583tion_a > list_P794930430897013583tion_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    append2015168933276535502tion_a: list_P725033923280534073tion_a > list_P725033923280534073tion_a > list_P725033923280534073tion_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    append71941514131468685tion_a: list_P2019770765010284920tion_a > list_P2019770765010284920tion_a > list_P2019770765010284920tion_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    append7352086131841177676tion_a: list_P3314507606740035767tion_a > list_P3314507606740035767tion_a > list_P3314507606740035767tion_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    append8417026981410738985tion_a: list_P5222580120286553364tion_a > list_P5222580120286553364tion_a > list_P5222580120286553364tion_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    append7117295776489507816tion_a: list_P8071961135100849747tion_a > list_P8071961135100849747tion_a > list_P8071961135100849747tion_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    append7143236819997180545tion_a: list_P7785822056432494700tion_a > list_P7785822056432494700tion_a > list_P7785822056432494700tion_a ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    append2547753245680614915od_b_c: list_P903359562653991662od_b_c > list_P903359562653991662od_b_c > list_P903359562653991662od_b_c ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    append4552370346615250537od_b_c: list_P5750542147746484308od_b_c > list_P5750542147746484308od_b_c > list_P5750542147746484308od_b_c ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    append7871285015701691475od_b_c: list_P5017272815184427326od_b_c > list_P5017272815184427326od_b_c > list_P5017272815184427326od_b_c ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    append6535234395748997138od_b_c: list_P4431940218174719357od_b_c > list_P4431940218174719357od_b_c > list_P4431940218174719357od_b_c ).

thf(sy_c_List_Oappend_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    append5199183775796302801od_b_c: list_P3846607621165011388od_b_c > list_P3846607621165011388od_b_c > list_P3846607621165011388od_b_c ).

thf(sy_c_List_Oappend_001tf__a,type,
    append_a: list_a > list_a > list_a ).

thf(sy_c_List_Oappend_001tf__b,type,
    append_b: list_b > list_b > list_b ).

thf(sy_c_List_Oappend_001tf__c,type,
    append_c: list_c > list_c > list_c ).

thf(sy_c_List_Odistinct_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    distin7977555812838611039tion_a: list_P7785822056432494700tion_a > $o ).

thf(sy_c_List_Odistinct_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    distin6568250333530618337od_b_c: list_P903359562653991662od_b_c > $o ).

thf(sy_c_List_Odistinct_001tf__a,type,
    distinct_a: list_a > $o ).

thf(sy_c_List_Odistinct_001tf__b,type,
    distinct_b: list_b > $o ).

thf(sy_c_List_Odistinct_001tf__c,type,
    distinct_c: list_c > $o ).

thf(sy_c_List_Oextract_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    extrac3690066604882443758tion_a: ( produc1359548802814378470tion_a > $o ) > list_P7785822056432494700tion_a > option4698682890252243502tion_a ).

thf(sy_c_List_Oextract_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    extrac2790361661052662384od_b_c: ( product_prod_b_c > $o ) > list_P903359562653991662od_b_c > option2591598976854080940od_b_c ).

thf(sy_c_List_Oextract_001tf__a,type,
    extract_a: ( a > $o ) > list_a > option788170273582809878list_a ).

thf(sy_c_List_Oextract_001tf__b,type,
    extract_b: ( b > $o ) > list_b > option1746649724871612821list_b ).

thf(sy_c_List_Oextract_001tf__c,type,
    extract_c: ( c > $o ) > list_c > option2705129176160415764list_c ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    cons_l4387309880990760226tion_a: list_P7785822056432494700tion_a > list_l7195309243935277682tion_a > list_l7195309243935277682tion_a ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    cons_l342771267123639716od_b_c: list_P903359562653991662od_b_c > list_l8907847357763382004od_b_c > list_l8907847357763382004od_b_c ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_Itf__a_J,type,
    cons_list_a: list_a > list_list_a > list_list_a ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_Itf__b_J,type,
    cons_list_b: list_b > list_list_b > list_list_b ).

thf(sy_c_List_Olist_OCons_001t__List__Olist_Itf__c_J,type,
    cons_list_c: list_c > list_list_c > list_list_c ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    cons_P8361449429630082525tion_a: produc3509355604313844263tion_a > list_P2261792721279755821tion_a > list_P2261792721279755821tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    cons_P9024763710870818431tion_a: produc3311688455941821897tion_a > list_P794930430897013583tion_a > list_P794930430897013583tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    cons_P2444059743230111081tion_a: produc2987544478742744755tion_a > list_P725033923280534073tion_a > list_P725033923280534073tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    cons_P500832324085044264tion_a: produc1044317059597677938tion_a > list_P2019770765010284920tion_a > list_P2019770765010284920tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    cons_P7780976941794753255tion_a: produc8324461677307386929tion_a > list_P3314507606740035767tion_a > list_P3314507606740035767tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    cons_P154622854812858436tion_a: produc1589689361865741454tion_a > list_P5222580120286553364tion_a > list_P5222580120286553364tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    cons_P8078263686746403075tion_a: produc289958156944510285tion_a > list_P8071961135100849747tion_a > list_P8071961135100849747tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J,type,
    cons_P4713136616185682745tion_a: produc1426679230291838083tion_a > list_P2455479929925280777tion_a > list_P2455479929925280777tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    cons_P7206946803070396828tion_a: produc1359548802814378470tion_a > list_P7785822056432494700tion_a > list_P7785822056432494700tion_a ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    cons_P4529483553340347422od_b_c: product_prod_b_c > list_P903359562653991662od_b_c > list_P903359562653991662od_b_c ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    cons_P696389382822869892od_b_c: produc6564011220051093454od_b_c > list_P5750542147746484308od_b_c > list_P5750542147746484308od_b_c ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    cons_P3423285395893488750od_b_c: produc6657052613134160568od_b_c > list_P5017272815184427326od_b_c > list_P5017272815184427326od_b_c ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    cons_P2087234775940794413od_b_c: produc5321001993181466231od_b_c > list_P4431940218174719357od_b_c > list_P4431940218174719357od_b_c ).

thf(sy_c_List_Olist_OCons_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    cons_P751184155988100076od_b_c: produc3984951373228771894od_b_c > list_P3846607621165011388od_b_c > list_P3846607621165011388od_b_c ).

thf(sy_c_List_Olist_OCons_001tf__a,type,
    cons_a: a > list_a > list_a ).

thf(sy_c_List_Olist_OCons_001tf__b,type,
    cons_b: b > list_b > list_b ).

thf(sy_c_List_Olist_OCons_001tf__c,type,
    cons_c: c > list_c > list_c ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    nil_li683225626544421234tion_a: list_l7195309243935277682tion_a ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    nil_li8071162985807626740od_b_c: list_l8907847357763382004od_b_c ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_Itf__a_J,type,
    nil_list_a: list_list_a ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_Itf__b_J,type,
    nil_list_b: list_list_b ).

thf(sy_c_List_Olist_ONil_001t__List__Olist_Itf__c_J,type,
    nil_list_c: list_list_c ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    nil_Pr2074429324785754669tion_a: list_P2261792721279755821tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    nil_Pr6423282846949386959tion_a: list_P794930430897013583tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    nil_Pr6317192669668678073tion_a: list_P725033923280534073tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    nil_Pr4373965250523611256tion_a: list_P2019770765010284920tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    nil_Pr2430737831378544439tion_a: list_P3314507606740035767tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    nil_Pr1678755033776733332tion_a: list_P5222580120286553364tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    nil_Pr379023828855502163tion_a: list_P8071961135100849747tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    nil_Pr6560348071176174381tion_a: list_P900065661572532781tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J,type,
    nil_Pr7469485397829879689tion_a: list_P2455479929925280777tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    nil_Pr596483954593762796tion_a: list_P7785822056432494700tion_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    nil_Pr2945457328363356077od_b_c: list_P7987531494101635245od_b_c ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J,type,
    nil_Pr1342775757158464060od_c_a: list_P6327159017948738492od_c_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    nil_Product_prod_a_a: list_P1396940483166286381od_a_a ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__b_Mtf__b_J,type,
    nil_Product_prod_b_b: list_P832325522607645677od_b_b ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    nil_Product_prod_b_c: list_P903359562653991662od_b_c ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    nil_Pr1579704168919171028od_b_c: list_P5750542147746484308od_b_c ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    nil_Pr5329896168980422846od_b_c: list_P5017272815184427326od_b_c ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    nil_Pr3993845549027728509od_b_c: list_P4431940218174719357od_b_c ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    nil_Pr2657794929075034172od_b_c: list_P3846607621165011388od_b_c ).

thf(sy_c_List_Olist_ONil_001t__Product____Type__Oprod_Itf__c_Mtf__c_J,type,
    nil_Product_prod_c_c: list_P267710562049004973od_c_c ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    nil_se4662696840916569420tion_a: list_s520338325785207756tion_a ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    nil_se6658356940551653326od_b_c: list_s6668505552993648206od_b_c ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_Itf__a_J,type,
    nil_set_a: list_set_a ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_Itf__b_J,type,
    nil_set_b: list_set_b ).

thf(sy_c_List_Olist_ONil_001t__Set__Oset_Itf__c_J,type,
    nil_set_c: list_set_c ).

thf(sy_c_List_Olist_ONil_001tf__a,type,
    nil_a: list_a ).

thf(sy_c_List_Olist_ONil_001tf__b,type,
    nil_b: list_b ).

thf(sy_c_List_Olist_ONil_001tf__c,type,
    nil_c: list_c ).

thf(sy_c_List_Olist_Ohd_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    hd_lis5991851625695082967tion_a: list_l7195309243935277682tion_a > list_P7785822056432494700tion_a ).

thf(sy_c_List_Olist_Ohd_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    hd_lis2394141544741573465od_b_c: list_l8907847357763382004od_b_c > list_P903359562653991662od_b_c ).

thf(sy_c_List_Olist_Ohd_001t__List__Olist_Itf__a_J,type,
    hd_list_a: list_list_a > list_a ).

thf(sy_c_List_Olist_Ohd_001t__List__Olist_Itf__b_J,type,
    hd_list_b: list_list_b > list_b ).

thf(sy_c_List_Olist_Ohd_001t__List__Olist_Itf__c_J,type,
    hd_list_c: list_list_c > list_c ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    hd_Pro4999766883071446225tion_a: list_P3731511166663127148tion_a > produc1981356485087006182tion_a ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    hd_Pro2241809909539833041tion_a: list_P7785822056432494700tion_a > produc1359548802814378470tion_a ).

thf(sy_c_List_Olist_Ohd_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    hd_Product_prod_b_c: list_P903359562653991662od_b_c > product_prod_b_c ).

thf(sy_c_List_Olist_Ohd_001tf__a,type,
    hd_a: list_a > a ).

thf(sy_c_List_Olist_Ohd_001tf__b,type,
    hd_b: list_b > b ).

thf(sy_c_List_Olist_Ohd_001tf__c,type,
    hd_c: list_c > c ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    set_li2579453694760304001tion_a: list_l7195309243935277682tion_a > set_li2036598085816368716tion_a ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    set_li4480668622519654659od_b_c: list_l8907847357763382004od_b_c > set_li6436108459499378894od_b_c ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_Itf__a_J,type,
    set_list_a2: list_list_a > set_list_a ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_Itf__b_J,type,
    set_list_b2: list_list_b > set_list_b ).

thf(sy_c_List_Olist_Oset_001t__List__Olist_Itf__c_J,type,
    set_list_c2: list_list_c > set_list_c ).

thf(sy_c_List_Olist_Oset_001t__Option__Ooption_Itf__a_J,type,
    set_option_a2: list_option_a > set_option_a ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    set_Pr948796958549772220tion_a: list_P2261792721279755821tion_a > set_Pr7585778909603769095tion_a ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    set_Pr3522298340653576636tion_a: list_P900065661572532781tion_a > set_Pr2214081342615893255tion_a ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    set_Pr150857188848084347tion_a: list_P7785822056432494700tion_a > set_Pr165121870232099142tion_a ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    set_Pr7267323205303737404od_b_c: list_P7987531494101635245od_b_c > set_Pr794624490088963975od_b_c ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    set_Product_prod_a_a2: list_P1396940483166286381od_a_a > set_Product_prod_a_a ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_Itf__b_Mtf__b_J,type,
    set_Product_prod_b_b2: list_P832325522607645677od_b_b > set_Product_prod_b_b ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    set_Product_prod_b_c2: list_P903359562653991662od_b_c > set_Product_prod_b_c ).

thf(sy_c_List_Olist_Oset_001t__Product____Type__Oprod_Itf__c_Mtf__c_J,type,
    set_Product_prod_c_c2: list_P267710562049004973od_c_c > set_Product_prod_c_c ).

thf(sy_c_List_Olist_Oset_001tf__a,type,
    set_a2: list_a > set_a ).

thf(sy_c_List_Olist_Oset_001tf__b,type,
    set_b2: list_b > set_b ).

thf(sy_c_List_Olist_Oset_001tf__c,type,
    set_c2: list_c > set_c ).

thf(sy_c_List_Olistset_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    listse5143494397118923211tion_a: list_s520338325785207756tion_a > set_li2036598085816368716tion_a ).

thf(sy_c_List_Olistset_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    listse5707276433534017357od_b_c: list_s6668505552993648206od_b_c > set_li6436108459499378894od_b_c ).

thf(sy_c_List_Olistset_001tf__a,type,
    listset_a: list_set_a > set_list_a ).

thf(sy_c_List_Olistset_001tf__b,type,
    listset_b: list_set_b > set_list_b ).

thf(sy_c_List_Olistset_001tf__c,type,
    listset_c: list_set_c > set_list_c ).

thf(sy_c_List_Omap__filter_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    map_fi5918281417598980042tion_a: ( produc1359548802814378470tion_a > option5121868808592388652tion_a ) > list_P7785822056432494700tion_a > list_P7785822056432494700tion_a ).

thf(sy_c_List_Omap__filter_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    map_fi5251985753137047240tion_a: ( product_prod_b_c > option618564342796057132tion_a ) > list_P903359562653991662od_b_c > list_P3731511166663127148tion_a ).

thf(sy_c_List_Omap__filter_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    map_fi7170063521196241608tion_a: ( product_prod_b_c > option5121868808592388652tion_a ) > list_P903359562653991662od_b_c > list_P7785822056432494700tion_a ).

thf(sy_c_List_Omap__filter_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b,type,
    map_fi694150099910991841_b_c_b: ( product_prod_b_c > option_b ) > list_P903359562653991662od_b_c > list_b ).

thf(sy_c_List_Omap__filter_001tf__a_001tf__a,type,
    map_filter_a_a: ( a > option_a ) > list_a > list_a ).

thf(sy_c_List_Omap__filter_001tf__a_001tf__b,type,
    map_filter_a_b: ( a > option_b ) > list_a > list_b ).

thf(sy_c_List_Omap__filter_001tf__a_001tf__c,type,
    map_filter_a_c: ( a > option_c ) > list_a > list_c ).

thf(sy_c_List_Omap__filter_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    map_fi6128386178780113523od_b_c: ( b > option4716579502443089070od_b_c ) > list_b > list_P903359562653991662od_b_c ).

thf(sy_c_List_Omap__filter_001tf__b_001tf__a,type,
    map_filter_b_a: ( b > option_a ) > list_b > list_a ).

thf(sy_c_List_Omap__filter_001tf__b_001tf__b,type,
    map_filter_b_b: ( b > option_b ) > list_b > list_b ).

thf(sy_c_List_Omap__filter_001tf__b_001tf__c,type,
    map_filter_b_c: ( b > option_c ) > list_b > list_c ).

thf(sy_c_List_Omap__filter_001tf__c_001tf__a,type,
    map_filter_c_a: ( c > option_a ) > list_c > list_a ).

thf(sy_c_List_Omap__filter_001tf__c_001tf__b,type,
    map_filter_c_b: ( c > option_b ) > list_c > list_b ).

thf(sy_c_List_Omap__filter_001tf__c_001tf__c,type,
    map_filter_c_c: ( c > option_c ) > list_c > list_c ).

thf(sy_c_List_On__lists_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    n_list8445877530053032436tion_a: nat > list_P7785822056432494700tion_a > list_l7195309243935277682tion_a ).

thf(sy_c_List_On__lists_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    n_list5224936925692304502od_b_c: nat > list_P903359562653991662od_b_c > list_l8907847357763382004od_b_c ).

thf(sy_c_List_On__lists_001tf__a,type,
    n_lists_a: nat > list_a > list_list_a ).

thf(sy_c_List_On__lists_001tf__b,type,
    n_lists_b: nat > list_b > list_list_b ).

thf(sy_c_List_On__lists_001tf__c,type,
    n_lists_c: nat > list_c > list_list_c ).

thf(sy_c_List_Oproduct_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc3145658774218581252tion_a: list_P903359562653991662od_b_c > list_P2261792721279755821tion_a > list_P7785822056432494700tion_a ).

thf(sy_c_List_Oproduct_001tf__b_001tf__c,type,
    product_b_c: list_b > list_c > list_P903359562653991662od_b_c ).

thf(sy_c_List_Oset__Cons_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    set_Co5710423222464989852tion_a: set_Pr165121870232099142tion_a > set_li2036598085816368716tion_a > set_li2036598085816368716tion_a ).

thf(sy_c_List_Oset__Cons_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    set_Co7706362885935805726od_b_c: set_Product_prod_b_c > set_li6436108459499378894od_b_c > set_li6436108459499378894od_b_c ).

thf(sy_c_List_Oset__Cons_001tf__a,type,
    set_Cons_a: set_a > set_list_a > set_list_a ).

thf(sy_c_List_Oset__Cons_001tf__b,type,
    set_Cons_b: set_b > set_list_b > set_list_b ).

thf(sy_c_List_Oset__Cons_001tf__c,type,
    set_Cons_c: set_c > set_list_c > set_list_c ).

thf(sy_c_Minimisation_Oofsm__table_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b_001tf__c,type,
    ofsm_t4823684861003709802_a_b_c: fsm_Pr4084281153683398667_a_b_c > ( produc1359548802814378470tion_a > set_Pr165121870232099142tion_a ) > nat > produc1359548802814378470tion_a > set_Pr165121870232099142tion_a ).

thf(sy_c_Minimisation_Oofsm__table_001tf__a_001tf__b_001tf__c,type,
    ofsm_table_a_b_c: fsm_a_b_c > ( a > set_a ) > nat > a > set_a ).

thf(sy_c_Minimisation_Oofsm__table__fix__rel_001tf__a_001tf__b_001tf__c,type,
    ofsm_t871162592440740414_a_b_c: produc7741492234613171770_a_nat > produc7741492234613171770_a_nat > $o ).

thf(sy_c_Minimisation_Oofsm__table__rel_001tf__a_001tf__b_001tf__c,type,
    ofsm_table_rel_a_b_c: produc1513024716730732301_nat_a > produc1513024716730732301_nat_a > $o ).

thf(sy_c_Nat_OSuc,type,
    suc: nat > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    size_s7657018318793033432tion_a: list_P7785822056432494700tion_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    size_s3392097710323735898od_b_c: list_P903359562653991662od_b_c > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__a_J,type,
    size_size_list_a: list_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__b_J,type,
    size_size_list_b: list_b > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__List__Olist_Itf__c_J,type,
    size_size_list_c: list_c > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    size_s7449963968697296024tion_a: option5121868808592388652tion_a > nat ).

thf(sy_c_Nat_Osize__class_Osize_001t__Option__Ooption_Itf__a_J,type,
    size_size_option_a: option_a > nat ).

thf(sy_c_Option_Ooption_ONone_001t__Option__Ooption_Itf__a_J,type,
    none_option_a: option_option_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    none_P2980980652070050889tion_a: option4698682890252243502tion_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    none_P8002138689083699399od_b_c: option2591598976854080940od_b_c ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J,type,
    none_P5893993846586699057list_a: option788170273582809878list_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J,type,
    none_P8319540550477353776list_b: option1746649724871612821list_b ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J,type,
    none_P1521715217513232687list_c: option2705129176160415764list_c ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    none_P4849659250516755783tion_a: option618564342796057132tion_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    none_P2271573532998059335tion_a: option5121868808592388652tion_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    none_P4246584108280835830od_b_c: option1037594673493148507od_b_c ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J,type,
    none_P7310308508618416183list_a: option231006655626737692list_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__a_J_J_J,type,
    none_P2037828107382228854list_a: option6368622450491518939list_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__a_J_J_J,type,
    none_P5988719743000817333list_a: option3282866208501524378list_a ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__b_J_J_J,type,
    none_P8495598133129203319list_b: option1068063722862986844list_b ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J,type,
    none_P3223117731893015990list_b: option7205679517727768091list_b ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__b_J_J_J,type,
    none_P7174009367511604469list_b: option4119923275737773530list_b ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__c_J_J_J,type,
    none_P457515720785214647list_c: option1905120790099235996list_c ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__c_J_J_J,type,
    none_P4408407356403803126list_c: option8042736584964017243list_c ).

thf(sy_c_Option_Ooption_ONone_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J,type,
    none_P8359298992022391605list_c: option4956980342974022682list_c ).

thf(sy_c_Option_Ooption_ONone_001tf__a,type,
    none_a: option_a ).

thf(sy_c_Option_Ooption_ONone_001tf__b,type,
    none_b: option_b ).

thf(sy_c_Option_Ooption_ONone_001tf__c,type,
    none_c: option_c ).

thf(sy_c_Option_Ooption_OSome_001t__Option__Ooption_Itf__a_J,type,
    some_option_a: option_a > option_option_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    some_P2694159108044368845tion_a: produc5690179691541610472tion_a > option4698682890252243502tion_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    some_P278523132111576139od_b_c: produc8789943477816147302od_b_c > option2591598976854080940od_b_c ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J,type,
    some_P5354654743593010357list_a: produc3854044251064639184list_a > option788170273582809878list_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J,type,
    some_P7780201447483665076list_b: produc6279590954955293903list_b > option1746649724871612821list_b ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J,type,
    some_P982376114519543987list_c: produc8705137658845948622list_c > option2705129176160415764list_c ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    some_P9187608838995116235tion_a: produc1981356485087006182tion_a > option618564342796057132tion_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    some_P2468934990214623435tion_a: produc1359548802814378470tion_a > option5121868808592388652tion_a ).

thf(sy_c_Option_Ooption_OSome_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    some_P804611721829158477od_b_c: product_prod_b_c > option4716579502443089070od_b_c ).

thf(sy_c_Option_Ooption_OSome_001tf__a,type,
    some_a: a > option_a ).

thf(sy_c_Option_Ooption_OSome_001tf__b,type,
    some_b: b > option_b ).

thf(sy_c_Option_Ooption_OSome_001tf__c,type,
    some_c: c > option_c ).

thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    case_o2405337025859624153tion_a: $o > ( produc1359548802814378470tion_a > $o ) > option5121868808592388652tion_a > $o ).

thf(sy_c_Option_Ooption_Ocase__option_001_Eo_001tf__a,type,
    case_option_o_a: $o > ( a > $o ) > option_a > $o ).

thf(sy_c_Option_Ooption_Ocase__option_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    case_o8606441145061933317tion_a: list_P7785822056432494700tion_a > ( produc1359548802814378470tion_a > list_P7785822056432494700tion_a ) > option5121868808592388652tion_a > list_P7785822056432494700tion_a ).

thf(sy_c_Option_Ooption_Ocase__option_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001tf__a,type,
    case_o7419520253229056539_b_c_a: list_P903359562653991662od_b_c > ( a > list_P903359562653991662od_b_c ) > option_a > list_P903359562653991662od_b_c ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    case_o848556868168149701tion_a: option4698682890252243502tion_a > ( produc5690179691541610472tion_a > option4698682890252243502tion_a ) > option4698682890252243502tion_a > option4698682890252243502tion_a ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    case_o3897382779013339973od_b_c: option2591598976854080940od_b_c > ( produc8789943477816147302od_b_c > option2591598976854080940od_b_c ) > option2591598976854080940od_b_c > option2591598976854080940od_b_c ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J,type,
    case_o1738312857800268997list_a: option788170273582809878list_a > ( produc3854044251064639184list_a > option788170273582809878list_a ) > option788170273582809878list_a > option788170273582809878list_a ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J_J_001t__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J,type,
    case_o2759806506104524549list_b: option1746649724871612821list_b > ( produc6279590954955293903list_b > option1746649724871612821list_b ) > option1746649724871612821list_b > option1746649724871612821list_b ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J_J_001t__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J,type,
    case_o3781300154408780101list_c: option2705129176160415764list_c > ( produc8705137658845948622list_c > option2705129176160415764list_c ) > option2705129176160415764list_c > option2705129176160415764list_c ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    case_o8960411972460962629tion_a: option618564342796057132tion_a > ( produc1359548802814378470tion_a > option618564342796057132tion_a ) > option5121868808592388652tion_a > option618564342796057132tion_a ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001tf__a,type,
    case_o8532513079010850397on_a_a: option5121868808592388652tion_a > ( a > option5121868808592388652tion_a ) > option_a > option5121868808592388652tion_a ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    case_o6845752758891366667tion_a: set_option_a > ( set_option_a > set_option_a ) > option_set_option_a > set_option_a ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    case_o1074465910202387531tion_a: set_Pr7585778909603769095tion_a > ( set_Pr7585778909603769095tion_a > set_Pr7585778909603769095tion_a ) > option1172118982809801933tion_a > set_Pr7585778909603769095tion_a ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J,type,
    case_o5084979270738236875od_c_a: set_Pr272002107461315949od_c_a > ( set_Pr272002107461315949od_c_a > set_Pr272002107461315949od_c_a ) > option8962052423969831475od_c_a > set_Pr272002107461315949od_c_a ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    case_o6717926715617704843od_b_c: set_Product_prod_b_c > ( set_Product_prod_b_c > set_Product_prod_b_c ) > option970444960630425614od_b_c > set_Product_prod_b_c ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Set__Oset_Itf__b_J_001t__Set__Oset_Itf__b_J,type,
    case_o6570817238820213323_set_b: set_b > ( set_b > set_b ) > option_set_b > set_b ).

thf(sy_c_Option_Ooption_Ocase__option_001t__Set__Oset_Itf__c_J_001t__Set__Oset_Itf__c_J,type,
    case_o8058779280418240651_set_c: set_c > ( set_c > set_c ) > option_set_c > set_c ).

thf(sy_c_Option_Ooption_Osize__option_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    size_o3460327842161311881tion_a: ( produc1359548802814378470tion_a > nat ) > option5121868808592388652tion_a > nat ).

thf(sy_c_Option_Ooption_Osize__option_001tf__a,type,
    size_option_a: ( a > nat ) > option_a > nat ).

thf(sy_c_Option_Ooption_Othe_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    the_Pr3329654379071218298tion_a: option5121868808592388652tion_a > produc1359548802814378470tion_a ).

thf(sy_c_Option_Ooption_Othe_001tf__a,type,
    the_a: option_a > a ).

thf(sy_c_Orderings_Obot__class_Obot_001_062_It__Option__Ooption_Itf__a_J_M_062_It__Option__Ooption_Itf__a_J_M_Eo_J_J,type,
    bot_bo2944298884891136090on_a_o: option_a > option_a > $o ).

thf(sy_c_Orderings_Obot__class_Obot_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J_J,type,
    bot_bo3248333349664421723on_a_o: product_prod_b_c > produc3509355604313844263tion_a > $o ).

thf(sy_c_Orderings_Obot__class_Obot_001_062_Itf__b_M_062_Itf__c_M_Eo_J_J,type,
    bot_bot_b_c_o: b > c > $o ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Nat__Onat,type,
    bot_bot_nat: nat ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    bot_bo776784062546337179tion_a: set_li2956804489699321647tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    bot_bo1823420383036508293tion_a: set_li4752145241073272345tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    bot_bo7137716345744724036tion_a: set_li843069166926712280tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    bot_bo3228640271598163971tion_a: set_li6157365129634928023tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    bot_bo1624043417848092000tion_a: set_li3627933069276137716tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    bot_bo4672577632258649887tion_a: set_li6676467283686695603tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    bot_bo8218494557939110584tion_a: set_li2036598085816368716tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J_J,type,
    bot_bo6236370880139903240od_c_a: set_li1159382662694783132od_c_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    bot_bo4166481423041325370od_b_c: set_li6436108459499378894od_b_c ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    bot_bo7409403289895635104od_b_c: set_li4056004263698848820od_b_c ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    bot_bo5916150862795892106od_b_c: set_li839162645350771998od_b_c ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    bot_bo2907369408128696905od_b_c: set_li7053753227538352605od_b_c ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    bot_bo9121959990316277512od_b_c: set_li4044971772871157404od_b_c ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_Itf__a_J_J,type,
    bot_bot_set_list_a: set_list_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_Itf__b_J_J,type,
    bot_bot_set_list_b: set_list_b ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__List__Olist_Itf__c_J_J,type,
    bot_bot_set_list_c: set_list_c ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    bot_bot_set_option_a: set_option_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    bot_bo235252021745139059tion_a: set_Pr7585778909603769095tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    bot_bo1215043797571408818tion_a: set_Pr165121870232099142tion_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J,type,
    bot_bo8402128546026624985od_c_a: set_Pr272002107461315949od_c_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    bot_bo2863795366942399540od_b_c: set_Product_prod_b_c ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_It__Product____Type__Oprod_Itf__c_Mtf__a_J_J,type,
    bot_bo2086078286244720881od_c_a: set_Product_prod_c_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_Itf__a_J,type,
    bot_bot_set_a: set_a ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_Itf__b_J,type,
    bot_bot_set_b: set_b ).

thf(sy_c_Orderings_Obot__class_Obot_001t__Set__Oset_Itf__c_J,type,
    bot_bot_set_c: set_c ).

thf(sy_c_Orderings_Oord__class_Oless__eq_001t__Nat__Onat,type,
    ord_less_eq_nat: nat > nat > $o ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc3812264733998805550tion_a: ( produc3509355604313844263tion_a > produc3509355604313844263tion_a ) > list_P7785822056432494700tion_a > produc8548937483218977916tion_a ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc6732093043127223957tion_a: ( produc1359548802814378470tion_a > produc1359548802814378470tion_a > $o ) > list_P7785822056432494700tion_a > produc2887264429716469285tion_a ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc1028200367394081980tion_a: ( produc1359548802814378470tion_a > $o ) > list_P7785822056432494700tion_a > produc7482660301195889802tion_a ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc8746878813851937655tion_a: ( produc1359548802814378470tion_a > $o ) > produc5245323578580934439tion_a > produc7046815421957522245tion_a ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J_J_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc6092892548594537111od_b_c: ( product_prod_b_c > product_prod_b_c > $o ) > list_P903359562653991662od_b_c > produc2416979464461413415od_b_c ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc7392021306980666816od_b_c: ( product_prod_b_c > $o ) > list_P903359562653991662od_b_c > produc7816210539016439438od_b_c ).

thf(sy_c_Product__Type_OPair_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J_001t__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc1005531610559690873od_b_c: ( product_prod_b_c > $o ) > produc5878855887281848999od_b_c > produc5559707038353031495od_b_c ).

thf(sy_c_Product__Type_OPair_001_062_Itf__a_M_062_Itf__a_M_Eo_J_J_001t__List__Olist_Itf__a_J,type,
    produc8111569692950616493list_a: ( a > a > $o ) > list_a > produc5032551385658279741list_a ).

thf(sy_c_Product__Type_OPair_001_062_Itf__a_M_Eo_J_001t__List__Olist_Itf__a_J,type,
    produc5033538197335023340list_a: ( a > $o ) > list_a > produc7567695631791103674list_a ).

thf(sy_c_Product__Type_OPair_001_062_Itf__a_M_Eo_J_001t__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__List__Olist_Itf__a_J_J,type,
    produc8731264218526379663list_a: ( a > $o ) > produc9164743771328383783list_a > produc3286415118216283229list_a ).

thf(sy_c_Product__Type_OPair_001_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Nat__Onat,type,
    produc1047048094022664750_a_nat: ( a > set_a ) > nat > produc7513307434770584310_a_nat ).

thf(sy_c_Product__Type_OPair_001_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_001t__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J,type,
    produc998444283466466305_nat_a: ( a > set_a ) > product_prod_nat_a > produc3377663681186084425_nat_a ).

thf(sy_c_Product__Type_OPair_001_062_Itf__b_M_062_Itf__b_M_Eo_J_J_001t__List__Olist_Itf__b_J,type,
    produc8193136575784045678list_b: ( b > b > $o ) > list_b > produc5185152304234826110list_b ).

thf(sy_c_Product__Type_OPair_001_062_Itf__b_M_Eo_J_001t__List__Olist_Itf__b_J,type,
    produc6309431049009149422list_b: ( b > $o ) > list_b > produc8914622519208346940list_b ).

thf(sy_c_Product__Type_OPair_001_062_Itf__b_M_Eo_J_001t__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__List__Olist_Itf__b_J_J,type,
    produc1341956810442481360list_b: ( b > $o ) > produc3963297410138542439list_b > produc4714985347897971870list_b ).

thf(sy_c_Product__Type_OPair_001_062_Itf__c_M_062_Itf__c_M_Eo_J_J_001t__List__Olist_Itf__c_J,type,
    produc8274703458617474863list_c: ( c > c > $o ) > list_c > produc5337753222811372479list_c ).

thf(sy_c_Product__Type_OPair_001_062_Itf__c_M_Eo_J_001t__List__Olist_Itf__c_J,type,
    produc7585323900683275504list_c: ( c > $o ) > list_c > produc1038177369770814398list_c ).

thf(sy_c_Product__Type_OPair_001_062_Itf__c_M_Eo_J_001t__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__List__Olist_Itf__c_J_J,type,
    produc3176021439213358865list_c: ( c > $o ) > produc7985223085803476903list_c > produc6143555577579660511list_c ).

thf(sy_c_Product__Type_OPair_001_062_Itf__c_Mtf__c_J_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc1101678828523717360od_b_c: ( c > c ) > list_P903359562653991662od_b_c > produc5747662315571815230od_b_c ).

thf(sy_c_Product__Type_OPair_001t__FSM__Ofsm_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J_001t__Option__Ooption_Itf__a_J,type,
    produc7738723614447551959tion_a: fsm_op7083421644242023300tion_a > option_a > produc1112982198792866279tion_a ).

thf(sy_c_Product__Type_OPair_001t__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_001t__Product____Type__Oprod_I_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Nat__Onat_J,type,
    produc7150388121251547178_a_nat: fsm_a_b_c > produc7513307434770584310_a_nat > produc7741492234613171770_a_nat ).

thf(sy_c_Product__Type_OPair_001t__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_001t__Product____Type__Oprod_I_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J_J,type,
    produc5808246683441043325_nat_a: fsm_a_b_c > produc3377663681186084425_nat_a > produc1513024716730732301_nat_a ).

thf(sy_c_Product__Type_OPair_001t__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__a_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc603523481723729227od_b_c: fsm_a_b_c > produc2768647787938385943od_b_c > produc5914258100495482587od_b_c ).

thf(sy_c_Product__Type_OPair_001t__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_001tf__a,type,
    produc1330280085856475698_b_c_a: fsm_a_b_c > a > produc7386240147096006850_b_c_a ).

thf(sy_c_Product__Type_OPair_001t__FSM____Impl__Ofsm____impl_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc6828275024444585425tion_a: fSM_fs6691076384796814508tion_a > produc1359548802814378470tion_a > produc5865029215095210593tion_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc3719507787779299095tion_a: list_P7785822056432494700tion_a > list_P7785822056432494700tion_a > produc5245323578580934439tion_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc1528220918894490456tion_a: list_P7785822056432494700tion_a > produc1320982846156868013tion_a > produc5690179691541610472tion_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc3076307724246486423od_b_c: list_P903359562653991662od_b_c > list_P903359562653991662od_b_c > produc5878855887281848999od_b_c ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc1861375773765947862od_b_c: list_P903359562653991662od_b_c > produc1809316117265082669od_b_c > produc8789943477816147302od_b_c ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__a_J_001t__List__Olist_Itf__a_J,type,
    produc6837034575241423639list_a: list_a > list_a > produc9164743771328383783list_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__a_J_001t__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J,type,
    produc3204708664006668352list_a: list_a > produc8685980395799941037list_a > produc3854044251064639184list_a ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__b_J_001t__List__Olist_Itf__b_J,type,
    produc1564554178308465111list_b: list_b > list_b > produc3963297410138542439list_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__b_J_001t__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J,type,
    produc5759544327908914751list_b: list_b > produc1021604436286309741list_b > produc6279590954955293903list_b ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__c_J_001t__List__Olist_Itf__c_J,type,
    produc5515445818230282391list_c: list_c > list_c > produc7985223085803476903list_c ).

thf(sy_c_Product__Type_OPair_001t__List__Olist_Itf__c_J_001t__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J,type,
    produc8314379991811161150list_c: list_c > produc2580600513627454253list_c > produc8705137658845948622list_c ).

thf(sy_c_Product__Type_OPair_001t__Nat__Onat_001tf__a,type,
    product_Pair_nat_a: nat > a > product_prod_nat_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc5025280594019148823tion_a: option5121868808592388652tion_a > option5121868808592388652tion_a > produc1577143314875622951tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc5432010977885840384tion_a: option_a > list_P2261792721279755821tion_a > produc5196315925859433104tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    produc9011544418120257559tion_a: option_a > option_a > produc3509355604313844263tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc4645961035427687802tion_a: option_a > produc3509355604313844263tion_a > produc8585254622362508682tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc1279490705019198813tion_a: option_a > produc8585254622362508682tion_a > produc7767961656693973869tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc8632033648809721756tion_a: option_a > produc3311688455941821897tion_a > produc7910999448953895980tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc2001663624932641310od_b_c: option_a > produc7832705962415348043od_b_c > produc744027765912188590od_b_c ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc1410100667027582777tion_a: option_a > produc1359548802814378470tion_a > produc3311688455941821897tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc1411328923815317539tion_a: option_a > produc8339461692517963728tion_a > produc2987544478742744755tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc4806779217739212386tion_a: option_a > produc2511539949587082767tion_a > produc1044317059597677938tion_a ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc7234324658902287035od_b_c: option_a > product_prod_b_c > produc7832705962415348043od_b_c ).

thf(sy_c_Product__Type_OPair_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc8202229511663107233tion_a: option_a > produc5906990243510977614tion_a > produc8324461677307386929tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Option__Ooption_Itf__a_J,type,
    produc3204315828778242676tion_a: produc3509355604313844263tion_a > option_a > produc6865984441117011460tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc4605057840462221132tion_a: produc3509355604313844263tion_a > produc8548937483218977916tion_a > produc4854357505245854674tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc1566367192716655447tion_a: produc3509355604313844263tion_a > produc3509355604313844263tion_a > produc2638908751750687975tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc6973863156084519702tion_a: produc3509355604313844263tion_a > produc1359548802814378470tion_a > produc5162482176405216038tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc6295405223228804478tion_a: produc3509355604313844263tion_a > produc6417208493444336718tion_a > produc1589689361865741454tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc1276052047308894104od_b_c: produc3509355604313844263tion_a > product_prod_b_c > produc8870028173696010152od_b_c ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc7000084597495903677tion_a: produc3509355604313844263tion_a > produc7121887867711435917tion_a > produc289958156944510285tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__b,type,
    produc3854578366862586927on_a_b: produc3509355604313844263tion_a > b > produc2069690243886521791on_a_b ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc8574412006938266909tion_a: produc1359548802814378470tion_a > list_P7785822056432494700tion_a > produc1320982846156868013tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_Itf__a_J,type,
    produc9213854589732381429tion_a: produc1359548802814378470tion_a > option_a > produc460604280026033285tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc6894522847932232471tion_a: produc1359548802814378470tion_a > produc1359548802814378470tion_a > produc1996521829013145895tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc3374755255637273753od_b_c: produc1359548802814378470tion_a > product_prod_b_c > produc524227702253089449od_b_c ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b,type,
    produc2493520948729567792on_a_b: produc1359548802814378470tion_a > b > produc4450879219090502080on_a_b ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc1371384365699412507tion_a: product_prod_b_c > list_P7785822056432494700tion_a > produc1667262785325640619tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc1467100693395308445od_b_c: product_prod_b_c > list_P903359562653991662od_b_c > produc1809316117265082669od_b_c ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    produc5520355756337774067tion_a: product_prod_b_c > option_a > produc1426679230291838083tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc2947908967115209229tion_a: product_prod_b_c > produc8548937483218977916tion_a > produc5304465490986466195tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    produc4287502265277869398tion_a: product_prod_b_c > produc1577143314875622951tion_a > produc1981356485087006182tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc7403377568244983126tion_a: product_prod_b_c > produc3509355604313844263tion_a > produc1359548802814378470tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_I_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc5465395319470875747tion_a: product_prod_b_c > produc4854357505245854674tion_a > produc7503123379815984105tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc1922097903555114262tion_a: product_prod_b_c > produc2638908751750687975tion_a > produc1273266500412711078tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc1879446177720309077tion_a: product_prod_b_c > produc5162482176405216038tion_a > produc2472489873198069605tion_a ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc5308714569644750039od_b_c: product_prod_b_c > produc8870028173696010152od_b_c > produc132672195601450727od_b_c ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc6366901981060558487od_b_c: product_prod_b_c > product_prod_b_c > produc4272613772517093799od_b_c ).

thf(sy_c_Product__Type_OPair_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b,type,
    produc794085425710893614_b_c_b: product_prod_b_c > b > produc8127812668234276542_b_c_b ).

thf(sy_c_Product__Type_OPair_001tf__a_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc6078649392988585351od_b_c: a > list_P903359562653991662od_b_c > produc2768647787938385943od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__a_001t__List__Olist_Itf__a_J,type,
    produc6670463072477821725list_a: a > list_a > produc8685980395799941037list_a ).

thf(sy_c_Product__Type_OPair_001tf__a_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc6743010978695025216tion_a: a > produc3509355604313844263tion_a > produc8339461692517963728tion_a ).

thf(sy_c_Product__Type_OPair_001tf__a_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J,type,
    produc5762801557034676134od_c_a: a > produc2133359284458116493od_c_a > produc2669932201312201782od_c_a ).

thf(sy_c_Product__Type_OPair_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc6867761804911831425od_b_c: a > product_prod_b_c > produc3550516665487611281od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__a_001tf__a,type,
    product_Pair_a_a: a > a > product_prod_a_a ).

thf(sy_c_Product__Type_OPair_001tf__a_001tf__b,type,
    product_Pair_a_b: a > b > product_prod_a_b ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc561751498933632326od_b_c: b > list_P903359562653991662od_b_c > produc6475121930738208726od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__List__Olist_Itf__b_J,type,
    produc8158425114075849053list_b: b > list_b > produc1021604436286309741list_b ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_I_062_Itf__c_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc7015427828931889894od_b_c: b > produc5747662315571815230od_b_c > produc6452300523622238572od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc915089235764144255tion_a: b > produc3509355604313844263tion_a > produc2511539949587082767tion_a ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc9148042335969415230tion_a: b > produc1359548802814378470tion_a > produc6417208493444336718tion_a ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc6228321504580015296od_b_c: b > product_prod_b_c > produc2911076365155795152od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_I_062_Itf__c_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    produc1384939585547926677od_b_c: b > produc3027252292617403629od_b_c > produc2009451851958091931od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc8951479680238463654tion_a: b > produc5906990243510977614tion_a > produc4358133044230692790tion_a ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc7233600189605653221tion_a: b > produc7121887867711435917tion_a > produc8814755222083049077tion_a ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc1849760930018728551od_b_c: b > produc2271636064823979023od_b_c > produc8036268780610582007od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__b_001t__Product____Type__Oprod_Itf__c_Mtf__a_J,type,
    produc3440865914000881661od_c_a: b > product_prod_c_a > produc2133359284458116493od_c_a ).

thf(sy_c_Product__Type_OPair_001tf__b_001tf__b,type,
    product_Pair_b_b: b > b > product_prod_b_b ).

thf(sy_c_Product__Type_OPair_001tf__b_001tf__c,type,
    product_Pair_b_c: b > c > product_prod_b_c ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__List__Olist_Itf__c_J,type,
    produc423015118819100573list_c: c > list_c > produc2580600513627454253list_c ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__Product____Type__Oprod_I_062_Itf__c_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    produc3590379597927054951od_b_c: c > produc5747662315571815230od_b_c > produc3027252292617403629od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc4310539529688039102tion_a: c > produc3509355604313844263tion_a > produc5906990243510977614tion_a ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc629349673381738621tion_a: c > produc1359548802814378470tion_a > produc7121887867711435917tion_a ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc821521780996605246od_b_c: c > produc4272613772517093799od_b_c > produc6564011220051093454od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc8300696160155326504od_b_c: c > produc3550516665487611281od_b_c > produc6657052613134160568od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc7661255859823510375od_b_c: c > produc2911076365155795152od_b_c > produc5321001993181466231od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc5588881204248199167od_b_c: c > product_prod_b_c > produc2271636064823979023od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__c_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc7021815559491694246od_b_c: c > produc2271636064823979023od_b_c > produc3984951373228771894od_b_c ).

thf(sy_c_Product__Type_OPair_001tf__c_001tf__a,type,
    product_Pair_c_a: c > a > product_prod_c_a ).

thf(sy_c_Product__Type_OPair_001tf__c_001tf__c,type,
    product_Pair_c_c: c > c > product_prod_c_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc1208239796184181889tion_a: ( list_P7785822056432494700tion_a > produc1320982846156868013tion_a > option4698682890252243502tion_a ) > produc5690179691541610472tion_a > option4698682890252243502tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc3875579526527411969od_b_c: ( list_P903359562653991662od_b_c > produc1809316117265082669od_b_c > option2591598976854080940od_b_c ) > produc8789943477816147302od_b_c > option2591598976854080940od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__List__Olist_Itf__a_J_001t__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J_J,type,
    produc4883841566203423873list_a: ( list_a > produc8685980395799941037list_a > option788170273582809878list_a ) > produc3854044251064639184list_a > option788170273582809878list_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__List__Olist_Itf__b_J_001t__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J_J,type,
    produc6010313031631800897list_b: ( list_b > produc1021604436286309741list_b > option1746649724871612821list_b ) > produc6279590954955293903list_b > option1746649724871612821list_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__List__Olist_Itf__c_J_001t__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J_J,type,
    produc7136784497060177921list_c: ( list_c > produc2580600513627454253list_c > option2705129176160415764list_c ) > produc8705137658845948622list_c > option2705129176160415764list_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc5247268081628628736tion_a: ( option5121868808592388652tion_a > option5121868808592388652tion_a > option618564342796057132tion_a ) > produc1577143314875622951tion_a > option618564342796057132tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001_Eo,type,
    produc7248784972643495020on_a_o: ( option_a > option_a > $o ) > produc3509355604313844263tion_a > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc6886125431942075136tion_a: ( option_a > option_a > option5121868808592388652tion_a ) > produc3509355604313844263tion_a > option5121868808592388652tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc2781663484249587963tion_a: ( option_a > option_a > produc3509355604313844263tion_a ) > produc3509355604313844263tion_a > produc3509355604313844263tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc3626514282821632728tion_a: ( option_a > option_a > produc6865984441117011460tion_a ) > produc3509355604313844263tion_a > produc6865984441117011460tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc7361977849462479193tion_a: ( option_a > option_a > produc460604280026033285tion_a ) > produc3509355604313844263tion_a > produc460604280026033285tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc9034804303711106391tion_a: ( option_a > option_a > produc1426679230291838083tion_a ) > produc3509355604313844263tion_a > produc1426679230291838083tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc7279435155265995068od_b_c: ( option_a > option_a > product_prod_b_c ) > produc3509355604313844263tion_a > product_prod_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc3553680268006689283tion_a: ( option_a > option_a > set_li2956804489699321647tion_a ) > produc3509355604313844263tion_a > set_li2956804489699321647tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc1841008779807284461tion_a: ( option_a > option_a > set_li4752145241073272345tion_a ) > produc3509355604313844263tion_a > set_li4752145241073272345tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc7155304742515500204tion_a: ( option_a > option_a > set_li843069166926712280tion_a ) > produc3509355604313844263tion_a > set_li843069166926712280tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc3246228668368940139tion_a: ( option_a > option_a > set_li6157365129634928023tion_a ) > produc3509355604313844263tion_a > set_li6157365129634928023tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    produc4538713402104808696tion_a: ( option_a > option_a > set_option_a ) > produc3509355604313844263tion_a > set_option_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc7626184649506457756od_b_c: ( option_a > option_a > set_Product_prod_b_c ) > produc3509355604313844263tion_a > set_Product_prod_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_Itf__a_J,type,
    produc3311379780099416882_set_a: ( option_a > option_a > set_a ) > produc3509355604313844263tion_a > set_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_Itf__b_J,type,
    produc3311379784402645683_set_b: ( option_a > option_a > set_b ) > produc3509355604313844263tion_a > set_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001t__Set__Oset_Itf__c_J,type,
    produc3311379788705874484_set_c: ( option_a > option_a > set_c ) > produc3509355604313844263tion_a > set_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001tf__a,type,
    produc3077986099366611410on_a_a: ( option_a > option_a > a ) > produc3509355604313844263tion_a > a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001tf__b,type,
    produc3077986099366611411on_a_b: ( option_a > option_a > b ) > produc3509355604313844263tion_a > b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J_001tf__c,type,
    produc3077986099366611412on_a_c: ( option_a > option_a > c ) > produc3509355604313844263tion_a > c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc2623861396443700661tion_a: ( option_a > produc3509355604313844263tion_a > produc6865984441117011460tion_a ) > produc8585254622362508682tion_a > produc6865984441117011460tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc401201214887364114tion_a: ( option_a > produc8585254622362508682tion_a > produc6865984441117011460tion_a ) > produc7767961656693973869tion_a > produc6865984441117011460tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc8322598343591050295od_b_c: ( option_a > produc3311688455941821897tion_a > produc8870028173696010152od_b_c ) > produc7910999448953895980tion_a > produc8870028173696010152od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J,type,
    produc6224679594961905996on_a_b: ( option_a > produc7832705962415348043od_b_c > produc2069690243886521791on_a_b ) > produc744027765912188590od_b_c > produc2069690243886521791on_a_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc7555325809092536794od_b_c: ( option_a > produc1359548802814378470tion_a > produc8870028173696010152od_b_c ) > produc3311688455941821897tion_a > produc8870028173696010152od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Option__Ooption_Itf__a_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J,type,
    produc3050390063807506671on_a_b: ( option_a > product_prod_b_c > produc2069690243886521791on_a_b ) > produc7832705962415348043od_b_c > produc2069690243886521791on_a_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc8561121617700946457tion_a: ( produc3509355604313844263tion_a > produc3509355604313844263tion_a > produc460604280026033285tion_a ) > produc2638908751750687975tion_a > produc460604280026033285tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc5652967154746714174od_b_c: ( produc3509355604313844263tion_a > produc1359548802814378470tion_a > produc524227702253089449od_b_c ) > produc5162482176405216038tion_a > produc524227702253089449od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mtf__b_J,type,
    produc3521321261471934035on_a_b: ( produc3509355604313844263tion_a > product_prod_b_c > produc4450879219090502080on_a_b ) > produc8870028173696010152od_b_c > produc4450879219090502080on_a_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__b_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc4040583092086564514tion_a: ( produc3509355604313844263tion_a > b > produc1359548802814378470tion_a ) > produc2069690243886521791on_a_b > produc1359548802814378470tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc6995664025456297084tion_a: ( produc1359548802814378470tion_a > list_P7785822056432494700tion_a > option4698682890252243502tion_a ) > produc1320982846156868013tion_a > option4698682890252243502tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc2746585896811386746od_b_c: ( product_prod_b_c > list_P903359562653991662od_b_c > option2591598976854080940od_b_c ) > produc1809316117265082669od_b_c > option2591598976854080940od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001_Eo,type,
    produc6118554791394114925on_a_o: ( product_prod_b_c > produc3509355604313844263tion_a > $o ) > produc1359548802814378470tion_a > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc7335867637399810301od_b_c: ( product_prod_b_c > produc3509355604313844263tion_a > produc8870028173696010152od_b_c ) > produc1359548802814378470tion_a > produc8870028173696010152od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc7506385956328841726od_b_c: ( product_prod_b_c > produc3509355604313844263tion_a > produc524227702253089449od_b_c ) > produc1359548802814378470tion_a > produc524227702253089449od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc9048760303372954427tion_a: ( product_prod_b_c > produc3509355604313844263tion_a > produc1359548802814378470tion_a ) > produc1359548802814378470tion_a > produc1359548802814378470tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc4368638588849824252od_b_c: ( product_prod_b_c > produc3509355604313844263tion_a > produc4272613772517093799od_b_c ) > produc1359548802814378470tion_a > produc4272613772517093799od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc8039891716053847428tion_a: ( product_prod_b_c > produc3509355604313844263tion_a > set_li2956804489699321647tion_a ) > produc1359548802814378470tion_a > set_li2956804489699321647tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc3383470850644824521tion_a: ( product_prod_b_c > produc3509355604313844263tion_a > set_li3627933069276137716tion_a ) > produc1359548802814378470tion_a > set_li3627933069276137716tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc6432005065055382408tion_a: ( product_prod_b_c > produc3509355604313844263tion_a > set_li6676467283686695603tion_a ) > produc1359548802814378470tion_a > set_li6676467283686695603tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    produc8931667835901856761tion_a: ( product_prod_b_c > produc3509355604313844263tion_a > set_option_a ) > produc1359548802814378470tion_a > set_option_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc8732251689290103837od_b_c: ( product_prod_b_c > produc3509355604313844263tion_a > set_Product_prod_b_c ) > produc1359548802814378470tion_a > set_Product_prod_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_Itf__a_J,type,
    produc5556088563787644851_set_a: ( product_prod_b_c > produc3509355604313844263tion_a > set_a ) > produc1359548802814378470tion_a > set_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_Itf__b_J,type,
    produc5556088568090873652_set_b: ( product_prod_b_c > produc3509355604313844263tion_a > set_b ) > produc1359548802814378470tion_a > set_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_Itf__c_J,type,
    produc5556088572394102453_set_c: ( product_prod_b_c > produc3509355604313844263tion_a > set_c ) > produc1359548802814378470tion_a > set_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__a,type,
    produc9166806139232348755on_a_a: ( product_prod_b_c > produc3509355604313844263tion_a > a ) > produc1359548802814378470tion_a > a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__c,type,
    produc9166806139232348757on_a_c: ( product_prod_b_c > produc3509355604313844263tion_a > c ) > produc1359548802814378470tion_a > c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc5532445016335710618tion_a: ( product_prod_b_c > produc2638908751750687975tion_a > produc460604280026033285tion_a ) > produc1273266500412711078tion_a > produc460604280026033285tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc4956916273415144383od_b_c: ( product_prod_b_c > produc5162482176405216038tion_a > produc524227702253089449od_b_c ) > produc2472489873198069605tion_a > produc524227702253089449od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mtf__b_J,type,
    produc8899491091450021844on_a_b: ( product_prod_b_c > produc8870028173696010152od_b_c > produc4450879219090502080on_a_b ) > produc132672195601450727od_b_c > produc4450879219090502080on_a_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001_Eo,type,
    produc9042625444911045100_b_c_o: ( product_prod_b_c > product_prod_b_c > $o ) > produc4272613772517093799od_b_c > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc3698069921310824072od_b_c: ( product_prod_b_c > product_prod_b_c > set_li4056004263698848820od_b_c ) > produc4272613772517093799od_b_c > set_li4056004263698848820od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__a_001t__List__Olist_Itf__a_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_Itf__a_J_J_J_J,type,
    produc1108463448241034084list_a: ( a > list_a > option788170273582809878list_a ) > produc8685980395799941037list_a > option788170273582809878list_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__a_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001_Eo,type,
    produc3253267719834416643on_a_o: ( a > produc3509355604313844263tion_a > $o ) > produc8339461692517963728tion_a > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__a_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc1365251906288819972tion_a: ( a > produc3509355604313844263tion_a > set_li4752145241073272345tion_a ) > produc8339461692517963728tion_a > set_li4752145241073272345tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001_Eo,type,
    produc1517356150873834626_b_c_o: ( a > product_prod_b_c > $o ) > produc3550516665487611281od_b_c > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__a_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc8670290561710468616od_b_c: ( a > product_prod_b_c > set_li839162645350771998od_b_c ) > produc3550516665487611281od_b_c > set_li839162645350771998od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__List__Olist_Itf__b_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__b_J_Mt__Product____Type__Oprod_Itf__b_Mt__List__Olist_Itf__b_J_J_J_J,type,
    produc3508384177818694563list_b: ( b > list_b > option1746649724871612821list_b ) > produc1021604436286309741list_b > option1746649724871612821list_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001_Eo,type,
    produc9184620452972502532on_a_o: ( b > produc3509355604313844263tion_a > $o ) > produc2511539949587082767tion_a > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc1584722505975425604tion_a: ( b > produc3509355604313844263tion_a > set_li843069166926712280tion_a ) > produc2511539949587082767tion_a > set_li843069166926712280tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001_Eo,type,
    produc3178858238328962181on_a_o: ( b > produc1359548802814378470tion_a > $o ) > produc6417208493444336718tion_a > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc4933440420390197473tion_a: ( b > produc1359548802814378470tion_a > set_li3627933069276137716tion_a ) > produc6417208493444336718tion_a > set_li3627933069276137716tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001_Eo,type,
    produc8624300129738135427_b_c_o: ( b > product_prod_b_c > $o ) > produc2911076365155795152od_b_c > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc6195930954516281800od_b_c: ( b > product_prod_b_c > set_li7053753227538352605od_b_c ) > produc2911076365155795152od_b_c > set_li7053753227538352605od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc7683150576536843528tion_a: ( b > produc5906990243510977614tion_a > produc1426679230291838083tion_a ) > produc4358133044230692790tion_a > produc1426679230291838083tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc6364426030298005587tion_a: ( b > produc8665472906054291430on_a_b > produc1359548802814378470tion_a ) > produc2810007308471097934on_a_b > produc1359548802814378470tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc5393685784398904109od_b_c: ( b > produc7121887867711435917tion_a > produc4272613772517093799od_b_c ) > produc8814755222083049077tion_a > produc4272613772517093799od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mtf__b_J,type,
    produc8667095251600479042_b_c_b: ( b > produc2271636064823979023od_b_c > produc8127812668234276542_b_c_b ) > produc8036268780610582007od_b_c > produc8127812668234276542_b_c_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001_Eo,type,
    produc1873627588981547243_b_c_o: ( b > c > $o ) > product_prod_b_c > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc60224875418212223tion_a: ( b > c > option618564342796057132tion_a ) > product_prod_b_c > option618564342796057132tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    produc3057695370585535359tion_a: ( b > c > option5121868808592388652tion_a ) > product_prod_b_c > option5121868808592388652tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J,type,
    produc5298298695090807442on_a_b: ( b > c > produc2069690243886521791on_a_b ) > product_prod_b_c > produc2069690243886521791on_a_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mtf__b_J,type,
    produc9222466129472397459on_a_b: ( b > c > produc4450879219090502080on_a_b ) > product_prod_b_c > produc4450879219090502080on_a_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mtf__b_J,type,
    produc8319444739903050897_b_c_b: ( b > c > produc8127812668234276542_b_c_b ) > product_prod_b_c > produc8127812668234276542_b_c_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    produc281880053716946747od_b_c: ( b > c > product_prod_b_c ) > product_prod_b_c > product_prod_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc1272705748417981063od_b_c: ( b > c > set_li4056004263698848820od_b_c ) > product_prod_b_c > set_li4056004263698848820od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc5320110297767511665od_b_c: ( b > c > set_li839162645350771998od_b_c ) > product_prod_b_c > set_li839162645350771998od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc2311328843100316464od_b_c: ( b > c > set_li7053753227538352605od_b_c ) > product_prod_b_c > set_li7053753227538352605od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc8525919425287897071od_b_c: ( b > c > set_li4044971772871157404od_b_c ) > product_prod_b_c > set_li4044971772871157404od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_It__Option__Ooption_Itf__a_J_J,type,
    produc6085577125068292983tion_a: ( b > c > set_option_a ) > product_prod_b_c > set_option_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc4740908828678249115od_b_c: ( b > c > set_Product_prod_b_c ) > product_prod_b_c > set_Product_prod_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_Itf__a_J,type,
    produc3958908706888076337_set_a: ( b > c > set_a ) > product_prod_b_c > set_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_Itf__b_J,type,
    produc3958908711191305138_set_b: ( b > c > set_b ) > product_prod_b_c > set_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001t__Set__Oset_Itf__c_J,type,
    produc3958908715494533939_set_c: ( b > c > set_c ) > product_prod_b_c > set_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001tf__a,type,
    produc8837194378803474129_b_c_a: ( b > c > a ) > product_prod_b_c > a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001tf__b,type,
    produc8837194378803474130_b_c_b: ( b > c > b ) > product_prod_b_c > b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__b_001tf__c_001tf__c,type,
    produc8837194378803474131_b_c_c: ( b > c > c ) > product_prod_b_c > c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__List__Olist_Itf__c_J_001t__Option__Ooption_It__Product____Type__Oprod_It__List__Olist_Itf__c_J_Mt__Product____Type__Oprod_Itf__c_Mt__List__Olist_Itf__c_J_J_J_J,type,
    produc5908304907396355042list_c: ( c > list_c > option2705129176160415764list_c ) > produc2580600513627454253list_c > option2705129176160415764list_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001_Eo,type,
    produc5892601149255812613on_a_o: ( c > produc3509355604313844263tion_a > $o ) > produc5906990243510977614tion_a > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J,type,
    produc7161371921572312816tion_a: ( c > produc3509355604313844263tion_a > produc1426679230291838083tion_a ) > produc5906990243510977614tion_a > produc1426679230291838083tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    produc1804193105662031236tion_a: ( c > produc3509355604313844263tion_a > set_li6157365129634928023tion_a ) > produc5906990243510977614tion_a > set_li6157365129634928023tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    produc5609512569699814715tion_a: ( c > produc2069690243886521791on_a_b > produc1359548802814378470tion_a ) > produc8665472906054291430on_a_b > produc1359548802814378470tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001_Eo,type,
    produc2822286271266722438on_a_o: ( c > produc1359548802814378470tion_a > $o ) > produc7121887867711435917tion_a > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    produc5353469812776056725od_b_c: ( c > produc1359548802814378470tion_a > produc4272613772517093799od_b_c ) > produc7121887867711435917tion_a > produc4272613772517093799od_b_c ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    produc4721512743775916961tion_a: ( c > produc1359548802814378470tion_a > set_li6676467283686695603tion_a ) > produc7121887867711435917tion_a > set_li6676467283686695603tion_a ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001_Eo,type,
    produc6507872071747660420_b_c_o: ( c > product_prod_b_c > $o ) > produc2271636064823979023od_b_c > $o ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mtf__b_J,type,
    produc5182368672167567274_b_c_b: ( c > product_prod_b_c > produc8127812668234276542_b_c_b ) > produc2271636064823979023od_b_c > produc8127812668234276542_b_c_b ).

thf(sy_c_Product__Type_Oprod_Ocase__prod_001tf__c_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    produc3721571347322094984od_b_c: ( c > product_prod_b_c > set_li4044971772871157404od_b_c ) > produc2271636064823979023od_b_c > set_li4044971772871157404od_b_c ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    collec5636679273671132247tion_a: ( list_P7785822056432494700tion_a > $o ) > set_li2036598085816368716tion_a ).

thf(sy_c_Set_OCollect_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    collec2280997390073109977od_b_c: ( list_P903359562653991662od_b_c > $o ) > set_li6436108459499378894od_b_c ).

thf(sy_c_Set_OCollect_001t__List__Olist_Itf__a_J,type,
    collect_list_a: ( list_a > $o ) > set_list_a ).

thf(sy_c_Set_OCollect_001t__List__Olist_Itf__b_J,type,
    collect_list_b: ( list_b > $o ) > set_list_b ).

thf(sy_c_Set_OCollect_001t__List__Olist_Itf__c_J,type,
    collect_list_c: ( list_c > $o ) > set_list_c ).

thf(sy_c_Set_OCollect_001t__Option__Ooption_Itf__a_J,type,
    collect_option_a: ( option_a > $o ) > set_option_a ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    collec4135126896892755346tion_a: ( produc3509355604313844263tion_a > $o ) > set_Pr7585778909603769095tion_a ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    collec5181485912584638289tion_a: ( produc1359548802814378470tion_a > $o ) > set_Pr165121870232099142tion_a ).

thf(sy_c_Set_OCollect_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    collec548942224018234067od_b_c: ( product_prod_b_c > $o ) > set_Product_prod_b_c ).

thf(sy_c_Set_OCollect_001tf__a,type,
    collect_a: ( a > $o ) > set_a ).

thf(sy_c_Set_OCollect_001tf__b,type,
    collect_b: ( b > $o ) > set_b ).

thf(sy_c_Set_OCollect_001tf__c,type,
    collect_c: ( c > $o ) > set_c ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    filter8754926412232404503tion_a: ( produc1359548802814378470tion_a > $o ) > set_Pr165121870232099142tion_a > set_Pr165121870232099142tion_a ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    filter2220054948923168984od_b_c: ( produc4272613772517093799od_b_c > $o ) > set_Pr794624490088963975od_b_c > set_Pr794624490088963975od_b_c ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    filter1889964280702917889tion_a: ( produc8339461692517963728tion_a > $o ) > set_Pr6039302352882833200tion_a > set_Pr6039302352882833200tion_a ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    filter7046912633919886786od_b_c: ( produc3550516665487611281od_b_c > $o ) > set_Pr3138385297192119153od_b_c > set_Pr3138385297192119153od_b_c ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    filter5285414574626812736tion_a: ( produc2511539949587082767tion_a > $o ) > set_Pr4096074933737766383tion_a > set_Pr4096074933737766383tion_a ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    filter4071044247055458175tion_a: ( produc6417208493444336718tion_a > $o ) > set_Pr4270194538194170542tion_a > set_Pr4270194538194170542tion_a ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    filter6407472333588070657od_b_c: ( produc2911076365155795152od_b_c > $o ) > set_Pr1802334677239424816od_b_c > set_Pr1802334677239424816od_b_c ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    filter1593123217884506009od_b_c: ( product_prod_b_c > $o ) > set_Product_prod_b_c > set_Product_prod_b_c ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    filter8680864868550707583tion_a: ( produc5906990243510977614tion_a > $o ) > set_Pr2152847514592699566tion_a > set_Pr2152847514592699566tion_a ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    filter4775723621322557374tion_a: ( produc7121887867711435917tion_a > $o ) > set_Pr2970463333272939373tion_a > set_Pr2970463333272939373tion_a ).

thf(sy_c_Set_Ofilter_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    filter5768032033256254528od_b_c: ( produc2271636064823979023od_b_c > $o ) > set_Pr466284057286730479od_b_c > set_Pr466284057286730479od_b_c ).

thf(sy_c_Set_Ofilter_001tf__a,type,
    filter_a: ( a > $o ) > set_a > set_a ).

thf(sy_c_Set_Ofilter_001tf__b,type,
    filter_b: ( b > $o ) > set_b > set_b ).

thf(sy_c_Set_Ofilter_001tf__c,type,
    filter_c: ( c > $o ) > set_c > set_c ).

thf(sy_c_Set_Oimage_001_062_It__Option__Ooption_Itf__a_J_M_062_It__Option__Ooption_Itf__a_J_M_Eo_J_J_001_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J,type,
    image_6407949166727107007on_a_o: ( ( option_a > option_a > $o ) > produc3509355604313844263tion_a > $o ) > set_op1042331080186719566on_a_o > set_Pr1925890298611716300on_a_o ).

thf(sy_c_Set_Oimage_001_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J_001t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    image_5784336120283239082tion_a: ( ( produc3509355604313844263tion_a > $o ) > set_Pr7585778909603769095tion_a ) > set_Pr1925890298611716300on_a_o > set_se9080664490266814439tion_a ).

thf(sy_c_Set_Oimage_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    image_5290189515652356776tion_a: ( ( produc1359548802814378470tion_a > $o ) > set_Pr165121870232099142tion_a ) > set_Pr1501335580822405837on_a_o > set_se8608509251338906790tion_a ).

thf(sy_c_Set_Oimage_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J_J_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J,type,
    image_4549361653694384065on_a_o: ( ( product_prod_b_c > produc3509355604313844263tion_a > $o ) > produc1359548802814378470tion_a > $o ) > set_Pr1259549870778335695on_a_o > set_Pr1501335580822405837on_a_o ).

thf(sy_c_Set_Oimage_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    image_7570891413644952236od_b_c: ( ( product_prod_b_c > $o ) > set_Product_prod_b_c ) > set_Pr5299558430686336203_b_c_o > set_se3344102371033692456od_b_c ).

thf(sy_c_Set_Oimage_001_062_Itf__b_M_062_Itf__c_M_Eo_J_J_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J,type,
    image_5579720380173907261_b_c_o: ( ( b > c > $o ) > product_prod_b_c > $o ) > set_b_c_o > set_Pr5299558430686336203_b_c_o ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    image_733707546518145542od_b_c: ( produc3509355604313844263tion_a > product_prod_b_c ) > set_Pr7585778909603769095tion_a > set_Product_prod_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__a,type,
    image_4579756942765042844on_a_a: ( produc3509355604313844263tion_a > a ) > set_Pr7585778909603769095tion_a > set_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__b,type,
    image_4579756942765042845on_a_b: ( produc3509355604313844263tion_a > b ) > set_Pr7585778909603769095tion_a > set_b ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__c,type,
    image_4579756942765042846on_a_c: ( produc3509355604313844263tion_a > c ) > set_Pr7585778909603769095tion_a > set_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    image_7561047434017321436tion_a: ( produc7767961656693973869tion_a > produc6865984441117011460tion_a ) > set_Pr5866527154223513677tion_a > set_Pr2749707142568386532tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    image_5289455629006396033od_b_c: ( produc7910999448953895980tion_a > produc8870028173696010152od_b_c ) > set_Pr1247259497978818444tion_a > set_Pr8610678188247801352od_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J,type,
    image_7337974018465538966on_a_b: ( produc744027765912188590od_b_c > produc2069690243886521791on_a_b ) > set_Pr6421828756912040462od_b_c > set_Pr5995116110478890399on_a_b ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    image_7237091692692235915tion_a: ( produc1359548802814378470tion_a > list_P7785822056432494700tion_a ) > set_Pr165121870232099142tion_a > set_li2036598085816368716tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    image_6529945806525002059tion_a: ( produc1359548802814378470tion_a > option5121868808592388652tion_a ) > set_Pr165121870232099142tion_a > set_op4555930566723375884tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    image_1495590055081105358tion_a: ( produc1359548802814378470tion_a > set_li2956804489699321647tion_a ) > set_Pr165121870232099142tion_a > set_se1202729586923980559tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__a,type,
    image_661556846710347421on_a_a: ( produc1359548802814378470tion_a > a ) > set_Pr165121870232099142tion_a > set_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__c,type,
    image_661556846710347423on_a_c: ( produc1359548802814378470tion_a > c ) > set_Pr165121870232099142tion_a > set_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    image_4795042712613722084tion_a: ( produc1273266500412711078tion_a > produc460604280026033285tion_a ) > set_Pr686560580885001990tion_a > set_Pr5758844192829797349tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    image_3573126336157258889od_b_c: ( produc2472489873198069605tion_a > produc524227702253089449od_b_c ) > set_Pr6758128758281331781tion_a > set_Pr7066209803171061385od_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mtf__b_J,type,
    image_7895577655531664542on_a_b: ( produc132672195601450727od_b_c > produc4450879219090502080on_a_b ) > set_Pr6196706626119988167od_b_c > set_Pr2846766834318901024on_a_b ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    image_2368855703703477586od_b_c: ( produc4272613772517093799od_b_c > set_li4056004263698848820od_b_c ) > set_Pr794624490088963975od_b_c > set_se674536213102732308od_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    image_2649853543940064334tion_a: ( produc8339461692517963728tion_a > set_li4752145241073272345tion_a ) > set_Pr6039302352882833200tion_a > set_se1494205944623320569tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    image_734192603544948690od_b_c: ( produc3550516665487611281od_b_c > set_li839162645350771998od_b_c ) > set_Pr3138385297192119153od_b_c > set_se2204854816880712958od_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    image_2869324143626669966tion_a: ( produc2511539949587082767tion_a > set_li843069166926712280tion_a ) > set_Pr4096074933737766383tion_a > set_se4352772351202092600tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    image_1206283865676369579tion_a: ( produc6417208493444336718tion_a > set_li3627933069276137716tion_a ) > set_Pr4270194538194170542tion_a > set_se9107620629761222868tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    image_7483205033205537682od_b_c: ( produc2911076365155795152od_b_c > set_li7053753227538352605od_b_c ) > set_Pr1802334677239424816od_b_c > set_se6059949474650966589od_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J,type,
    image_5980092412179217874tion_a: ( produc4358133044230692790tion_a > produc1426679230291838083tion_a ) > set_Pr3340741384720568086tion_a > set_Pr7646808907904093667tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mtf__b_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    image_740512185282103069tion_a: ( produc2810007308471097934on_a_b > produc1359548802814378470tion_a ) > set_Pr8172789613847822510on_a_b > set_Pr165121870232099142tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    image_2148568948811708023od_b_c: ( produc8814755222083049077tion_a > produc4272613772517093799od_b_c ) > set_Pr562290946369674325tion_a > set_Pr794624490088963975od_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mtf__b_J,type,
    image_4105215589603732108_b_c_b: ( produc8036268780610582007od_b_c > produc8127812668234276542_b_c_b ) > set_Pr2280573845676964823od_b_c > set_Pr2246819283840396830_b_c_b ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    image_5872333176446027019od_b_c: ( product_prod_b_c > list_P903359562653991662od_b_c ) > set_Product_prod_b_c > set_li6436108459499378894od_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    image_3117045938558108421od_b_c: ( product_prod_b_c > product_prod_b_c ) > set_Product_prod_b_c > set_Product_prod_b_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Set__Oset_Itf__a_J,type,
    image_4080534270163907067_set_a: ( product_prod_b_c > set_a ) > set_Product_prod_b_c > set_set_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__a,type,
    image_7762865866877615259_b_c_a: ( product_prod_b_c > a ) > set_Product_prod_b_c > set_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b,type,
    image_7762865866877615260_b_c_b: ( product_prod_b_c > b ) > set_Product_prod_b_c > set_b ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__c,type,
    image_7762865866877615261_b_c_c: ( product_prod_b_c > c ) > set_Product_prod_b_c > set_c ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    image_3088794743313275598tion_a: ( produc5906990243510977614tion_a > set_li6157365129634928023tion_a ) > set_Pr2152847514592699566tion_a > set_se7211338757780864631tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J,type,
    image_994356189062089067tion_a: ( produc7121887867711435917tion_a > set_li6676467283686695603tion_a ) > set_Pr2970463333272939373tion_a > set_se8814638777607770899tion_a ).

thf(sy_c_Set_Oimage_001t__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J_J,type,
    image_5008845426011350866od_b_c: ( produc2271636064823979023od_b_c > set_li4044971772871157404od_b_c ) > set_Pr466284057286730479od_b_c > set_se691672095566444412od_b_c ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001_062_It__Option__Ooption_Itf__a_J_M_062_It__Option__Ooption_Itf__a_J_M_Eo_J_J,type,
    image_8954226719953535660on_a_o: ( set_Pr7585778909603769095tion_a > option_a > option_a > $o ) > set_se9080664490266814439tion_a > set_op1042331080186719566on_a_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001_062_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_M_Eo_J,type,
    image_859774862597740440on_a_o: ( set_Pr165121870232099142tion_a > produc1359548802814378470tion_a > $o ) > set_se8608509251338906790tion_a > set_Pr1501335580822405837on_a_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_062_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_M_Eo_J_J,type,
    image_1760819085762999598on_a_o: ( set_Pr165121870232099142tion_a > product_prod_b_c > produc3509355604313844263tion_a > $o ) > set_se8608509251338906790tion_a > set_Pr1259549870778335695on_a_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001_Eo,type,
    image_7702861549700458327on_a_o: ( set_Pr165121870232099142tion_a > $o ) > set_se8608509251338906790tion_a > set_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    image_1392618125580181381tion_a: ( set_Pr165121870232099142tion_a > set_Pr165121870232099142tion_a ) > set_se8608509251338906790tion_a > set_se8608509251338906790tion_a ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001_062_It__Product____Type__Oprod_Itf__b_Mtf__c_J_M_Eo_J,type,
    image_4227305300989077528_b_c_o: ( set_Product_prod_b_c > product_prod_b_c > $o ) > set_se3344102371033692456od_b_c > set_Pr5299558430686336203_b_c_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001_062_Itf__b_M_062_Itf__c_M_Eo_J_J,type,
    image_6949117070849169066_b_c_o: ( set_Product_prod_b_c > b > c > $o ) > set_se3344102371033692456od_b_c > set_b_c_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001_Eo,type,
    image_7483047868864506965_b_c_o: ( set_Product_prod_b_c > $o ) > set_se3344102371033692456od_b_c > set_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    image_5168084938239471365od_b_c: ( set_Product_prod_b_c > set_Product_prod_b_c ) > set_se3344102371033692456od_b_c > set_se3344102371033692456od_b_c ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__a_J_001_062_Itf__a_M_Eo_J,type,
    image_set_a_a_o: ( set_a > a > $o ) > set_set_a > set_a_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__a_J_001_Eo,type,
    image_set_a_o: ( set_a > $o ) > set_set_a > set_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__a_J_001t__Set__Oset_Itf__a_J,type,
    image_set_a_set_a: ( set_a > set_a ) > set_set_a > set_set_a ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__b_J_001_062_Itf__b_M_Eo_J,type,
    image_set_b_b_o: ( set_b > b > $o ) > set_set_b > set_b_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__b_J_001_Eo,type,
    image_set_b_o: ( set_b > $o ) > set_set_b > set_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__b_J_001t__Set__Oset_Itf__b_J,type,
    image_set_b_set_b: ( set_b > set_b ) > set_set_b > set_set_b ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__c_J_001_062_Itf__c_M_Eo_J,type,
    image_set_c_c_o: ( set_c > c > $o ) > set_set_c > set_c_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__c_J_001_Eo,type,
    image_set_c_o: ( set_c > $o ) > set_set_c > set_o ).

thf(sy_c_Set_Oimage_001t__Set__Oset_Itf__c_J_001t__Set__Oset_Itf__c_J,type,
    image_set_c_set_c: ( set_c > set_c ) > set_set_c > set_set_c ).

thf(sy_c_Set_Oimage_001tf__a_001t__List__Olist_Itf__a_J,type,
    image_a_list_a: ( a > list_a ) > set_a > set_list_a ).

thf(sy_c_Set_Oimage_001tf__a_001t__Option__Ooption_Itf__a_J,type,
    image_a_option_a: ( a > option_a ) > set_a > set_option_a ).

thf(sy_c_Set_Oimage_001tf__a_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    image_3927929672479151951od_b_c: ( a > set_Product_prod_b_c ) > set_a > set_se3344102371033692456od_b_c ).

thf(sy_c_Set_Oimage_001tf__a_001t__Set__Oset_Itf__a_J,type,
    image_a_set_a: ( a > set_a ) > set_a > set_set_a ).

thf(sy_c_Set_Oimage_001tf__a_001t__Set__Oset_Itf__b_J,type,
    image_a_set_b: ( a > set_b ) > set_a > set_set_b ).

thf(sy_c_Set_Oimage_001tf__a_001t__Set__Oset_Itf__c_J,type,
    image_a_set_c: ( a > set_c ) > set_a > set_set_c ).

thf(sy_c_Set_Oimage_001tf__a_001tf__a,type,
    image_a_a: ( a > a ) > set_a > set_a ).

thf(sy_c_Set_Oimage_001tf__a_001tf__b,type,
    image_a_b: ( a > b ) > set_a > set_b ).

thf(sy_c_Set_Oimage_001tf__a_001tf__c,type,
    image_a_c: ( a > c ) > set_a > set_c ).

thf(sy_c_Set_Oimage_001tf__b_001t__List__Olist_Itf__b_J,type,
    image_b_list_b: ( b > list_b ) > set_b > set_list_b ).

thf(sy_c_Set_Oimage_001tf__b_001t__Set__Oset_Itf__a_J,type,
    image_b_set_a: ( b > set_a ) > set_b > set_set_a ).

thf(sy_c_Set_Oimage_001tf__b_001t__Set__Oset_Itf__b_J,type,
    image_b_set_b: ( b > set_b ) > set_b > set_set_b ).

thf(sy_c_Set_Oimage_001tf__b_001t__Set__Oset_Itf__c_J,type,
    image_b_set_c: ( b > set_c ) > set_b > set_set_c ).

thf(sy_c_Set_Oimage_001tf__b_001tf__a,type,
    image_b_a: ( b > a ) > set_b > set_a ).

thf(sy_c_Set_Oimage_001tf__b_001tf__b,type,
    image_b_b: ( b > b ) > set_b > set_b ).

thf(sy_c_Set_Oimage_001tf__b_001tf__c,type,
    image_b_c: ( b > c ) > set_b > set_c ).

thf(sy_c_Set_Oimage_001tf__c_001t__List__Olist_Itf__c_J,type,
    image_c_list_c: ( c > list_c ) > set_c > set_list_c ).

thf(sy_c_Set_Oimage_001tf__c_001t__Set__Oset_Itf__a_J,type,
    image_c_set_a: ( c > set_a ) > set_c > set_set_a ).

thf(sy_c_Set_Oimage_001tf__c_001t__Set__Oset_Itf__b_J,type,
    image_c_set_b: ( c > set_b ) > set_c > set_set_b ).

thf(sy_c_Set_Oimage_001tf__c_001t__Set__Oset_Itf__c_J,type,
    image_c_set_c: ( c > set_c ) > set_c > set_set_c ).

thf(sy_c_Set_Oimage_001tf__c_001tf__a,type,
    image_c_a: ( c > a ) > set_c > set_a ).

thf(sy_c_Set_Oimage_001tf__c_001tf__b,type,
    image_c_b: ( c > b ) > set_c > set_b ).

thf(sy_c_Set_Oimage_001tf__c_001tf__c,type,
    image_c_c: ( c > c ) > set_c > set_c ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    insert4060808858060226847tion_a: list_P794930430897013583tion_a > set_li2956804489699321647tion_a > set_li2956804489699321647tion_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    insert4862639237864458249tion_a: list_P725033923280534073tion_a > set_li4752145241073272345tion_a > set_li4752145241073272345tion_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    insert6157376079594209096tion_a: list_P2019770765010284920tion_a > set_li843069166926712280tion_a > set_li843069166926712280tion_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    insert7452112921323959943tion_a: list_P3314507606740035767tion_a > set_li6157365129634928023tion_a > set_li6157365129634928023tion_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    insert7919908882736581348tion_a: list_P5222580120286553364tion_a > set_li3627933069276137716tion_a > set_li3627933069276137716tion_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J,type,
    insert1545917860696101923tion_a: list_P8071961135100849747tion_a > set_li6676467283686695603tion_a > set_li6676467283686695603tion_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    insert2781922097456180796tion_a: list_P7785822056432494700tion_a > set_li2036598085816368716tion_a > set_li2036598085816368716tion_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J,type,
    insert4789241225314331020od_c_a: list_P6327159017948738492od_c_a > set_li1159382662694783132od_c_a > set_li1159382662694783132od_c_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    insert6227932334100060350od_b_c: list_P903359562653991662od_b_c > set_li6436108459499378894od_b_c > set_li6436108459499378894od_b_c ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    insert7969419889936365092od_b_c: list_P5750542147746484308od_b_c > set_li4056004263698848820od_b_c > set_li4056004263698848820od_b_c ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    insert3479355022550019854od_b_c: list_P5017272815184427326od_b_c > set_li839162645350771998od_b_c > set_li839162645350771998od_b_c ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    insert2894022425540311885od_b_c: list_P4431940218174719357od_b_c > set_li7053753227538352605od_b_c > set_li7053753227538352605od_b_c ).

thf(sy_c_Set_Oinsert_001t__List__Olist_It__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    insert2308689828530603916od_b_c: list_P3846607621165011388od_b_c > set_li4044971772871157404od_b_c > set_li4044971772871157404od_b_c ).

thf(sy_c_Set_Oinsert_001t__List__Olist_Itf__a_J,type,
    insert_list_a: list_a > set_list_a > set_list_a ).

thf(sy_c_Set_Oinsert_001t__List__Olist_Itf__b_J,type,
    insert_list_b: list_b > set_list_b > set_list_b ).

thf(sy_c_Set_Oinsert_001t__List__Olist_Itf__c_J,type,
    insert_list_c: list_c > set_list_c > set_list_c ).

thf(sy_c_Set_Oinsert_001t__Option__Ooption_Itf__a_J,type,
    insert_option_a: option_a > set_option_a > set_option_a ).

thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    insert3613951195108356022tion_a: produc1359548802814378470tion_a > set_Pr165121870232099142tion_a > set_Pr165121870232099142tion_a ).

thf(sy_c_Set_Oinsert_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    insert1747480808674937912od_b_c: product_prod_b_c > set_Product_prod_b_c > set_Product_prod_b_c ).

thf(sy_c_Set_Oinsert_001tf__a,type,
    insert_a: a > set_a > set_a ).

thf(sy_c_Set_Oinsert_001tf__b,type,
    insert_b: b > set_b > set_b ).

thf(sy_c_Set_Oinsert_001tf__c,type,
    insert_c: c > set_c > set_c ).

thf(sy_c_Sublist_Oprefixes_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    prefix4527274647823915123tion_a: list_P7785822056432494700tion_a > list_l7195309243935277682tion_a ).

thf(sy_c_Sublist_Oprefixes_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    prefix1131979855692807669od_b_c: list_P903359562653991662od_b_c > list_l8907847357763382004od_b_c ).

thf(sy_c_Sublist_Oprefixes_001tf__a,type,
    prefixes_a: list_a > list_list_a ).

thf(sy_c_Sublist_Oprefixes_001tf__b,type,
    prefixes_b: list_b > list_list_b ).

thf(sy_c_Sublist_Oprefixes_001tf__c,type,
    prefixes_c: list_c > list_list_c ).

thf(sy_c_Sublist_Osublists_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    sublis2289869149930848382tion_a: list_P7785822056432494700tion_a > list_l7195309243935277682tion_a ).

thf(sy_c_Sublist_Osublists_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    sublis8706766506341057792od_b_c: list_P903359562653991662od_b_c > list_l8907847357763382004od_b_c ).

thf(sy_c_Sublist_Osublists_001tf__a,type,
    sublists_a: list_a > list_list_a ).

thf(sy_c_Sublist_Osublists_001tf__b,type,
    sublists_b: list_b > list_list_b ).

thf(sy_c_Sublist_Osublists_001tf__c,type,
    sublists_c: list_c > list_list_c ).

thf(sy_c_Util_Ofind__remove__2_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b,type,
    find_r3958742308954804126_b_c_b: ( product_prod_b_c > b > $o ) > list_P903359562653991662od_b_c > list_b > option1037594673493148507od_b_c ).

thf(sy_c_Util_Ofind__remove__2_001tf__a_001tf__a,type,
    find_remove_2_a_a: ( a > a > $o ) > list_a > list_a > option231006655626737692list_a ).

thf(sy_c_Util_Ofind__remove__2_001tf__a_001tf__b,type,
    find_remove_2_a_b: ( a > b > $o ) > list_a > list_b > option6368622450491518939list_a ).

thf(sy_c_Util_Ofind__remove__2_001tf__a_001tf__c,type,
    find_remove_2_a_c: ( a > c > $o ) > list_a > list_c > option3282866208501524378list_a ).

thf(sy_c_Util_Ofind__remove__2_001tf__b_001tf__a,type,
    find_remove_2_b_a: ( b > a > $o ) > list_b > list_a > option1068063722862986844list_b ).

thf(sy_c_Util_Ofind__remove__2_001tf__b_001tf__b,type,
    find_remove_2_b_b: ( b > b > $o ) > list_b > list_b > option7205679517727768091list_b ).

thf(sy_c_Util_Ofind__remove__2_001tf__b_001tf__c,type,
    find_remove_2_b_c: ( b > c > $o ) > list_b > list_c > option4119923275737773530list_b ).

thf(sy_c_Util_Ofind__remove__2_001tf__c_001tf__a,type,
    find_remove_2_c_a: ( c > a > $o ) > list_c > list_a > option1905120790099235996list_c ).

thf(sy_c_Util_Ofind__remove__2_001tf__c_001tf__b,type,
    find_remove_2_c_b: ( c > b > $o ) > list_c > list_b > option8042736584964017243list_c ).

thf(sy_c_Util_Ofind__remove__2_001tf__c_001tf__c,type,
    find_remove_2_c_c: ( c > c > $o ) > list_c > list_c > option4956980342974022682list_c ).

thf(sy_c_Util_Olist__ordered__pairs_001t__Option__Ooption_Itf__a_J,type,
    list_o4254566017930142219tion_a: list_option_a > list_P2261792721279755821tion_a ).

thf(sy_c_Util_Olist__ordered__pairs_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    list_o3332032289628391213tion_a: list_P7785822056432494700tion_a > list_P900065661572532781tion_a ).

thf(sy_c_Util_Olist__ordered__pairs_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    list_o804723041229831855od_b_c: list_P903359562653991662od_b_c > list_P7987531494101635245od_b_c ).

thf(sy_c_Util_Olist__ordered__pairs_001tf__a,type,
    list_ordered_pairs_a: list_a > list_P1396940483166286381od_a_a ).

thf(sy_c_Util_Olist__ordered__pairs_001tf__b,type,
    list_ordered_pairs_b: list_b > list_P832325522607645677od_b_b ).

thf(sy_c_Util_Olist__ordered__pairs_001tf__c,type,
    list_ordered_pairs_c: list_c > list_P267710562049004973od_c_c ).

thf(sy_c_Util_Olists__of__length_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    lists_8699066763821570497tion_a: list_P7785822056432494700tion_a > nat > list_l7195309243935277682tion_a ).

thf(sy_c_Util_Olists__of__length_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    lists_2361477089028216131od_b_c: list_P903359562653991662od_b_c > nat > list_l8907847357763382004od_b_c ).

thf(sy_c_Util_Olists__of__length_001tf__a,type,
    lists_of_length_a: list_a > nat > list_list_a ).

thf(sy_c_Util_Olists__of__length_001tf__b,type,
    lists_of_length_b: list_b > nat > list_list_b ).

thf(sy_c_Util_Olists__of__length_001tf__c,type,
    lists_of_length_c: list_c > nat > list_list_c ).

thf(sy_c_Util_Onon__sym__dist__pairs_001t__Option__Ooption_Itf__a_J,type,
    non_sy3588569677374631096tion_a: list_option_a > list_P2261792721279755821tion_a ).

thf(sy_c_Util_Onon__sym__dist__pairs_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    non_sy8571533894597929818tion_a: list_P7785822056432494700tion_a > list_P900065661572532781tion_a ).

thf(sy_c_Util_Onon__sym__dist__pairs_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    non_sy6082845619963730908od_b_c: list_P903359562653991662od_b_c > list_P7987531494101635245od_b_c ).

thf(sy_c_Util_Onon__sym__dist__pairs_001tf__a,type,
    non_sym_dist_pairs_a: list_a > list_P1396940483166286381od_a_a ).

thf(sy_c_Util_Onon__sym__dist__pairs_001tf__b,type,
    non_sym_dist_pairs_b: list_b > list_P832325522607645677od_b_b ).

thf(sy_c_Util_Onon__sym__dist__pairs_001tf__c,type,
    non_sym_dist_pairs_c: list_c > list_P267710562049004973od_c_c ).

thf(sy_c_Util_Oset__as__map_001t__Option__Ooption_Itf__a_J_001t__Option__Ooption_Itf__a_J,type,
    set_as4564133134819314422tion_a: set_Pr7585778909603769095tion_a > option_a > option_set_option_a ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Option__Ooption_Itf__a_J,type,
    set_as2664186614515276755tion_a: set_Pr2749707142568386532tion_a > produc3509355604313844263tion_a > option_set_option_a ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    set_as2071954791142440055od_b_c: set_Pr8610678188247801352od_b_c > produc3509355604313844263tion_a > option970444960630425614od_b_c ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_001tf__b,type,
    set_as3023528999989491726on_a_b: set_Pr5995116110478890399on_a_b > produc3509355604313844263tion_a > option_set_b ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Option__Ooption_Itf__a_J,type,
    set_as3631467928419630676tion_a: set_Pr5758844192829797349tion_a > produc1359548802814378470tion_a > option_set_option_a ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    set_as159351887160806264od_b_c: set_Pr7066209803171061385od_b_c > produc1359548802814378470tion_a > option970444960630425614od_b_c ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_001tf__b,type,
    set_as4631586148140396559on_a_b: set_Pr2846766834318901024on_a_b > produc1359548802814378470tion_a > option_set_b ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Option__Ooption_Itf__a_J,type,
    set_as4733650267230731346tion_a: set_Pr7646808907904093667tion_a > product_prod_b_c > option_set_option_a ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    set_as8199280312078529077tion_a: set_Pr165121870232099142tion_a > product_prod_b_c > option1172118982809801933tion_a ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    set_as7998429123878137974od_b_c: set_Pr794624490088963975od_b_c > product_prod_b_c > option970444960630425614od_b_c ).

thf(sy_c_Util_Oset__as__map_001t__Product____Type__Oprod_Itf__b_Mtf__c_J_001tf__b,type,
    set_as2236830661276861197_b_c_b: set_Pr2246819283840396830_b_c_b > product_prod_b_c > option_set_b ).

thf(sy_c_Util_Oset__as__map_001tf__a_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J,type,
    set_as7394328699852255621od_c_a: set_Pr8357624050790843030od_c_a > a > option8962052423969831475od_c_a ).

thf(sy_c_Util_Oset__as__map_001tf__b_001tf__c,type,
    set_as_map_b_c: set_Product_prod_b_c > b > option_set_c ).

thf(sy_c_Util_Osuffixes_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    suffix6577423449323756504tion_a: list_P7785822056432494700tion_a > list_l7195309243935277682tion_a ).

thf(sy_c_Util_Osuffixes_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    suffix2151784340763841114od_b_c: list_P903359562653991662od_b_c > list_l8907847357763382004od_b_c ).

thf(sy_c_Util_Osuffixes_001tf__a,type,
    suffixes_a: list_a > list_list_a ).

thf(sy_c_Util_Osuffixes_001tf__b,type,
    suffixes_b: list_b > list_list_b ).

thf(sy_c_Util_Osuffixes_001tf__c,type,
    suffixes_c: list_c > list_list_c ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__FSM__Ofsm_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Option__Ooption_Itf__a_J_J,type,
    accp_P8749490156236764144tion_a: ( produc1112982198792866279tion_a > produc1112982198792866279tion_a > $o ) > produc1112982198792866279tion_a > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mt__Product____Type__Oprod_I_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Nat__Onat_J_J,type,
    accp_P6475056738455908163_a_nat: ( produc7741492234613171770_a_nat > produc7741492234613171770_a_nat > $o ) > produc7741492234613171770_a_nat > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mt__Product____Type__Oprod_I_062_Itf__a_Mt__Set__Oset_Itf__a_J_J_Mt__Product____Type__Oprod_It__Nat__Onat_Mtf__a_J_J_J,type,
    accp_P4445291940695893782_nat_a: ( produc1513024716730732301_nat_a > produc1513024716730732301_nat_a > $o ) > produc1513024716730732301_nat_a > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__a_Mt__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J_J,type,
    accp_P4000836841735168996od_b_c: ( produc5914258100495482587od_b_c > produc5914258100495482587od_b_c > $o ) > produc5914258100495482587od_b_c > $o ).

thf(sy_c_Wellfounded_Oaccp_001t__Product____Type__Oprod_It__FSM__Ofsm_Itf__a_Mtf__b_Mtf__c_J_Mtf__a_J,type,
    accp_P8775296850406592587_b_c_a: ( produc7386240147096006850_b_c_a > produc7386240147096006850_b_c_a > $o ) > produc7386240147096006850_b_c_a > $o ).

thf(sy_c_member_001t__List__Olist_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    member3771681913024528598tion_a: list_P2261792721279755821tion_a > set_li3008808369820902797tion_a > $o ).

thf(sy_c_member_001t__List__Olist_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    member2632207693412262165tion_a: list_P7785822056432494700tion_a > set_li2036598085816368716tion_a > $o ).

thf(sy_c_member_001t__List__Olist_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    member6330420149250801815od_b_c: list_P903359562653991662od_b_c > set_li6436108459499378894od_b_c > $o ).

thf(sy_c_member_001t__List__Olist_Itf__a_J,type,
    member_list_a: list_a > set_list_a > $o ).

thf(sy_c_member_001t__List__Olist_Itf__b_J,type,
    member_list_b: list_b > set_list_b > $o ).

thf(sy_c_member_001t__List__Olist_Itf__c_J,type,
    member_list_c: list_c > set_list_c > $o ).

thf(sy_c_member_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    member8742333265550254549tion_a: option5121868808592388652tion_a > set_op4555930566723375884tion_a > $o ).

thf(sy_c_member_001t__Option__Ooption_Itf__a_J,type,
    member_option_a: option_a > set_option_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J,type,
    member5498148017924304208tion_a: produc3509355604313844263tion_a > set_Pr7585778909603769095tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    member7553362430500004246tion_a: produc7767961656693973869tion_a > set_Pr5866527154223513677tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    member442141391781795925tion_a: produc7910999448953895980tion_a > set_Pr1247259497978818444tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    member4523665186249005015od_b_c: produc744027765912188590od_b_c > set_Pr6421828756912040462od_b_c > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    member757019045792887922tion_a: produc3311688455941821897tion_a > set_Pr6377393035488738089tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    member1364567196453864272tion_a: produc1996521829013145895tion_a > set_Pr2214081342615893255tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J,type,
    member5139186223151194895tion_a: produc1359548802814378470tion_a > set_Pr165121870232099142tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    member3027780480095386831tion_a: produc1273266500412711078tion_a > set_Pr686560580885001990tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    member1840535240638787982tion_a: produc2472489873198069605tion_a > set_Pr6758128758281331781tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    member5811712069106484752od_b_c: produc132672195601450727od_b_c > set_Pr6196706626119988167od_b_c > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    member7104721839413753296od_b_c: produc4272613772517093799od_b_c > set_Pr794624490088963975od_b_c > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J,type,
    member5502040268208861279od_c_a: produc2669932201312201782od_c_a > set_Pr8357624050790843030od_c_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__a_Mtf__a_J,type,
    member1426531477525435216od_a_a: product_prod_a_a > set_Product_prod_a_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    member8137770464567509215tion_a: produc4358133044230692790tion_a > set_Pr3340741384720568086tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J,type,
    member5270423058733307294tion_a: produc8814755222083049077tion_a > set_Pr562290946369674325tion_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mt__Product____Type__Oprod_Itf__b_Mtf__c_J_J_J,type,
    member1645004810652465696od_b_c: produc8036268780610582007od_b_c > set_Pr2280573845676964823od_b_c > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__b_Mtf__b_J,type,
    member7862447936710763792od_b_b: product_prod_b_b > set_Product_prod_b_b > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__b_Mtf__c_J,type,
    member7862447941013992593od_b_c: product_prod_b_c > set_Product_prod_b_c > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__c_Mtf__a_J,type,
    member5074992350434858958od_c_a: product_prod_c_a > set_Product_prod_c_a > $o ).

thf(sy_c_member_001t__Product____Type__Oprod_Itf__c_Mtf__c_J,type,
    member5074992359041316560od_c_c: product_prod_c_c > set_Product_prod_c_c > $o ).

thf(sy_c_member_001t__Set__Oset_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J,type,
    member5078571727796508271tion_a: set_Pr165121870232099142tion_a > set_se8608509251338906790tion_a > $o ).

thf(sy_c_member_001t__Set__Oset_It__Product____Type__Oprod_Itf__b_Mtf__c_J_J,type,
    member1323035592203954161od_b_c: set_Product_prod_b_c > set_se3344102371033692456od_b_c > $o ).

thf(sy_c_member_001t__Set__Oset_Itf__a_J,type,
    member_set_a: set_a > set_set_a > $o ).

thf(sy_c_member_001t__Set__Oset_Itf__b_J,type,
    member_set_b: set_b > set_set_b > $o ).

thf(sy_c_member_001t__Set__Oset_Itf__c_J,type,
    member_set_c: set_c > set_set_c > $o ).

thf(sy_c_member_001tf__a,type,
    member_a: a > set_a > $o ).

thf(sy_c_member_001tf__b,type,
    member_b: b > set_b > $o ).

thf(sy_c_member_001tf__c,type,
    member_c: c > set_c > $o ).

thf(sy_v_M,type,
    m: fsm_a_b_c ).

thf(sy_v_f____,type,
    f: product_prod_b_c > option5121868808592388652tion_a ).

thf(sy_v_k,type,
    k: nat ).

thf(sy_v_q1,type,
    q1: a ).

thf(sy_v_q1_H____,type,
    q12: a ).

thf(sy_v_q2,type,
    q2: a ).

thf(sy_v_thesis,type,
    thesis: $o ).

thf(sy_v_x____,type,
    x: b ).

thf(sy_v_y____,type,
    y: c ).

% Relevant facts (1246)
thf(fact_0_hd__in__set,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ( member_a @ ( hd_a @ Xs ) @ ( set_a2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_1_hd__in__set,axiom,
    ! [Xs: list_c] :
      ( ( Xs != nil_c )
     => ( member_c @ ( hd_c @ Xs ) @ ( set_c2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_2_hd__in__set,axiom,
    ! [Xs: list_b] :
      ( ( Xs != nil_b )
     => ( member_b @ ( hd_b @ Xs ) @ ( set_b2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_3_hd__in__set,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( Xs != nil_Pr596483954593762796tion_a )
     => ( member5139186223151194895tion_a @ ( hd_Pro2241809909539833041tion_a @ Xs ) @ ( set_Pr150857188848084347tion_a @ Xs ) ) ) ).

% hd_in_set
thf(fact_4_hd__in__set,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( Xs != nil_Product_prod_b_c )
     => ( member7862447941013992593od_b_c @ ( hd_Product_prod_b_c @ Xs ) @ ( set_Product_prod_b_c2 @ Xs ) ) ) ).

% hd_in_set
thf(fact_5__092_060open_062List_Omap__filter_Af_A_IList_Oproduct_A_Iinputs__as__list_AM_J_A_Ioutputs__as__list_AM_J_J_A_092_060noteq_062_A_091_093_092_060close_062,axiom,
    ( ( map_fi7170063521196241608tion_a @ f @ ( product_b_c @ ( inputs_as_list_a_b_c @ m ) @ ( output4084235763626582864_a_b_c @ m ) ) )
   != nil_Pr596483954593762796tion_a ) ).

% \<open>List.map_filter f (List.product (inputs_as_list M) (outputs_as_list M)) \<noteq> []\<close>
thf(fact_6_assms_I1_J,axiom,
    observable_a_b_c @ m ).

% assms(1)
thf(fact_7__C_K_C,axiom,
    ( ( select6043575893837601639_a_b_c @ m @ q1 @ q2 @ ( suc @ k ) )
    = ( hd_Pro2241809909539833041tion_a @ ( map_fi7170063521196241608tion_a @ f @ ( product_b_c @ ( inputs_as_list_a_b_c @ m ) @ ( output4084235763626582864_a_b_c @ m ) ) ) ) ) ).

% "*"
thf(fact_8_list_Oset__sel_I1_J,axiom,
    ! [A: list_a] :
      ( ( A != nil_a )
     => ( member_a @ ( hd_a @ A ) @ ( set_a2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_9_list_Oset__sel_I1_J,axiom,
    ! [A: list_c] :
      ( ( A != nil_c )
     => ( member_c @ ( hd_c @ A ) @ ( set_c2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_10_list_Oset__sel_I1_J,axiom,
    ! [A: list_b] :
      ( ( A != nil_b )
     => ( member_b @ ( hd_b @ A ) @ ( set_b2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_11_list_Oset__sel_I1_J,axiom,
    ! [A: list_P7785822056432494700tion_a] :
      ( ( A != nil_Pr596483954593762796tion_a )
     => ( member5139186223151194895tion_a @ ( hd_Pro2241809909539833041tion_a @ A ) @ ( set_Pr150857188848084347tion_a @ A ) ) ) ).

% list.set_sel(1)
thf(fact_12_list_Oset__sel_I1_J,axiom,
    ! [A: list_P903359562653991662od_b_c] :
      ( ( A != nil_Product_prod_b_c )
     => ( member7862447941013992593od_b_c @ ( hd_Product_prod_b_c @ A ) @ ( set_Product_prod_b_c2 @ A ) ) ) ).

% list.set_sel(1)
thf(fact_13_map__filter__simps_I2_J,axiom,
    ! [F: product_prod_b_c > option5121868808592388652tion_a] :
      ( ( map_fi7170063521196241608tion_a @ F @ nil_Product_prod_b_c )
      = nil_Pr596483954593762796tion_a ) ).

% map_filter_simps(2)
thf(fact_14_map__filter__simps_I2_J,axiom,
    ! [F: produc1359548802814378470tion_a > option5121868808592388652tion_a] :
      ( ( map_fi5918281417598980042tion_a @ F @ nil_Pr596483954593762796tion_a )
      = nil_Pr596483954593762796tion_a ) ).

% map_filter_simps(2)
thf(fact_15_map__filter__simps_I2_J,axiom,
    ! [F: b > option_b] :
      ( ( map_filter_b_b @ F @ nil_b )
      = nil_b ) ).

% map_filter_simps(2)
thf(fact_16_map__filter__simps_I2_J,axiom,
    ! [F: b > option_c] :
      ( ( map_filter_b_c @ F @ nil_b )
      = nil_c ) ).

% map_filter_simps(2)
thf(fact_17_map__filter__simps_I2_J,axiom,
    ! [F: b > option_a] :
      ( ( map_filter_b_a @ F @ nil_b )
      = nil_a ) ).

% map_filter_simps(2)
thf(fact_18_map__filter__simps_I2_J,axiom,
    ! [F: c > option_b] :
      ( ( map_filter_c_b @ F @ nil_c )
      = nil_b ) ).

% map_filter_simps(2)
thf(fact_19_map__filter__simps_I2_J,axiom,
    ! [F: c > option_c] :
      ( ( map_filter_c_c @ F @ nil_c )
      = nil_c ) ).

% map_filter_simps(2)
thf(fact_20_map__filter__simps_I2_J,axiom,
    ! [F: c > option_a] :
      ( ( map_filter_c_a @ F @ nil_c )
      = nil_a ) ).

% map_filter_simps(2)
thf(fact_21_map__filter__simps_I2_J,axiom,
    ! [F: a > option_b] :
      ( ( map_filter_a_b @ F @ nil_a )
      = nil_b ) ).

% map_filter_simps(2)
thf(fact_22_map__filter__simps_I2_J,axiom,
    ! [F: a > option_c] :
      ( ( map_filter_a_c @ F @ nil_a )
      = nil_c ) ).

% map_filter_simps(2)
thf(fact_23_assms_I3_J,axiom,
    member_a @ q2 @ ( states_a_b_c @ m ) ).

% assms(3)
thf(fact_24_assms_I2_J,axiom,
    member_a @ q1 @ ( states_a_b_c @ m ) ).

% assms(2)
thf(fact_25__092_060open_062y_A_092_060in_062_AFSM_Ooutputs_AM_092_060close_062,axiom,
    member_c @ y @ ( outputs_a_b_c @ m ) ).

% \<open>y \<in> FSM.outputs M\<close>
thf(fact_26__092_060open_062_Ix_M_Ay_J_A_092_060in_062_Aset_A_IList_Oproduct_A_Iinputs__as__list_AM_J_A_Ioutputs__as__list_AM_J_J_092_060close_062,axiom,
    member7862447941013992593od_b_c @ ( product_Pair_b_c @ x @ y ) @ ( set_Product_prod_b_c2 @ ( product_b_c @ ( inputs_as_list_a_b_c @ m ) @ ( output4084235763626582864_a_b_c @ m ) ) ) ).

% \<open>(x, y) \<in> set (List.product (inputs_as_list M) (outputs_as_list M))\<close>
thf(fact_27__092_060open_062x_A_092_060in_062_AFSM_Oinputs_AM_092_060close_062,axiom,
    member_b @ x @ ( inputs_a_b_c @ m ) ).

% \<open>x \<in> FSM.inputs M\<close>
thf(fact_28_map__filter__elem,axiom,
    ! [Y: b,F: b > option_b,Xs: list_b] :
      ( ( member_b @ Y @ ( set_b2 @ ( map_filter_b_b @ F @ Xs ) ) )
     => ~ ! [X: b] :
            ( ( member_b @ X @ ( set_b2 @ Xs ) )
           => ( ( F @ X )
             != ( some_b @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_29_map__filter__elem,axiom,
    ! [Y: b,F: c > option_b,Xs: list_c] :
      ( ( member_b @ Y @ ( set_b2 @ ( map_filter_c_b @ F @ Xs ) ) )
     => ~ ! [X: c] :
            ( ( member_c @ X @ ( set_c2 @ Xs ) )
           => ( ( F @ X )
             != ( some_b @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_30_map__filter__elem,axiom,
    ! [Y: b,F: a > option_b,Xs: list_a] :
      ( ( member_b @ Y @ ( set_b2 @ ( map_filter_a_b @ F @ Xs ) ) )
     => ~ ! [X: a] :
            ( ( member_a @ X @ ( set_a2 @ Xs ) )
           => ( ( F @ X )
             != ( some_b @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_31_map__filter__elem,axiom,
    ! [Y: c,F: b > option_c,Xs: list_b] :
      ( ( member_c @ Y @ ( set_c2 @ ( map_filter_b_c @ F @ Xs ) ) )
     => ~ ! [X: b] :
            ( ( member_b @ X @ ( set_b2 @ Xs ) )
           => ( ( F @ X )
             != ( some_c @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_32_map__filter__elem,axiom,
    ! [Y: c,F: c > option_c,Xs: list_c] :
      ( ( member_c @ Y @ ( set_c2 @ ( map_filter_c_c @ F @ Xs ) ) )
     => ~ ! [X: c] :
            ( ( member_c @ X @ ( set_c2 @ Xs ) )
           => ( ( F @ X )
             != ( some_c @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_33_map__filter__elem,axiom,
    ! [Y: c,F: a > option_c,Xs: list_a] :
      ( ( member_c @ Y @ ( set_c2 @ ( map_filter_a_c @ F @ Xs ) ) )
     => ~ ! [X: a] :
            ( ( member_a @ X @ ( set_a2 @ Xs ) )
           => ( ( F @ X )
             != ( some_c @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_34_map__filter__elem,axiom,
    ! [Y: a,F: b > option_a,Xs: list_b] :
      ( ( member_a @ Y @ ( set_a2 @ ( map_filter_b_a @ F @ Xs ) ) )
     => ~ ! [X: b] :
            ( ( member_b @ X @ ( set_b2 @ Xs ) )
           => ( ( F @ X )
             != ( some_a @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_35_map__filter__elem,axiom,
    ! [Y: a,F: c > option_a,Xs: list_c] :
      ( ( member_a @ Y @ ( set_a2 @ ( map_filter_c_a @ F @ Xs ) ) )
     => ~ ! [X: c] :
            ( ( member_c @ X @ ( set_c2 @ Xs ) )
           => ( ( F @ X )
             != ( some_a @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_36_map__filter__elem,axiom,
    ! [Y: a,F: a > option_a,Xs: list_a] :
      ( ( member_a @ Y @ ( set_a2 @ ( map_filter_a_a @ F @ Xs ) ) )
     => ~ ! [X: a] :
            ( ( member_a @ X @ ( set_a2 @ Xs ) )
           => ( ( F @ X )
             != ( some_a @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_37_map__filter__elem,axiom,
    ! [Y: product_prod_b_c,F: b > option4716579502443089070od_b_c,Xs: list_b] :
      ( ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ ( map_fi6128386178780113523od_b_c @ F @ Xs ) ) )
     => ~ ! [X: b] :
            ( ( member_b @ X @ ( set_b2 @ Xs ) )
           => ( ( F @ X )
             != ( some_P804611721829158477od_b_c @ Y ) ) ) ) ).

% map_filter_elem
thf(fact_38_List_Oproduct_Osimps_I1_J,axiom,
    ! [Uu: list_P2261792721279755821tion_a] :
      ( ( produc3145658774218581252tion_a @ nil_Product_prod_b_c @ Uu )
      = nil_Pr596483954593762796tion_a ) ).

% List.product.simps(1)
thf(fact_39_List_Oproduct_Osimps_I1_J,axiom,
    ! [Uu: list_c] :
      ( ( product_b_c @ nil_b @ Uu )
      = nil_Product_prod_b_c ) ).

% List.product.simps(1)
thf(fact_40_outputs__as__list__set,axiom,
    ! [M: fsm_a_b_c] :
      ( ( set_c2 @ ( output4084235763626582864_a_b_c @ M ) )
      = ( outputs_a_b_c @ M ) ) ).

% outputs_as_list_set
thf(fact_41_inputs__as__list__set,axiom,
    ! [M: fsm_a_b_c] :
      ( ( set_b2 @ ( inputs_as_list_a_b_c @ M ) )
      = ( inputs_a_b_c @ M ) ) ).

% inputs_as_list_set
thf(fact_42__092_060open_062FSM_Oh__obs_AM_Aq1_Ax_Ay_A_061_ASome_Aq1_H_092_060close_062,axiom,
    ( ( h_obs_a_b_c @ m @ q1 @ x @ y )
    = ( some_a @ q12 ) ) ).

% \<open>FSM.h_obs M q1 x y = Some q1'\<close>
thf(fact_43__092_060open_062_IFSM_Oh__obs_AM_Aq1_Ax_Ay_A_061_ANone_J_A_092_060noteq_062_A_IFSM_Oh__obs_AM_Aq2_Ax_Ay_A_061_ANone_J_092_060close_062,axiom,
    ( ( ( h_obs_a_b_c @ m @ q1 @ x @ y )
      = none_a )
   != ( ( h_obs_a_b_c @ m @ q2 @ x @ y )
      = none_a ) ) ).

% \<open>(FSM.h_obs M q1 x y = None) \<noteq> (FSM.h_obs M q2 x y = None)\<close>
thf(fact_44__C2_C,axiom,
    ( ( ( h_obs_a_b_c @ m @ q2 @ x @ y )
      = none_a )
    & ? [Q1: a] :
        ( ( h_obs_a_b_c @ m @ q1 @ x @ y )
        = ( some_a @ Q1 ) ) ) ).

% "2"
thf(fact_45_False,axiom,
    ~ ! [X: b,Y2: c] :
        ( ( member_b @ X @ ( inputs_a_b_c @ m ) )
       => ( ( member_c @ Y2 @ ( outputs_a_b_c @ m ) )
         => ( ( ( h_obs_a_b_c @ m @ q1 @ X @ Y2 )
              = none_a )
            = ( ( h_obs_a_b_c @ m @ q2 @ X @ Y2 )
              = none_a ) ) ) ) ).

% False
thf(fact_46_option_Oinject,axiom,
    ! [X2: a,Y22: a] :
      ( ( ( some_a @ X2 )
        = ( some_a @ Y22 ) )
      = ( X2 = Y22 ) ) ).

% option.inject
thf(fact_47_option_Oinject,axiom,
    ! [X2: produc1359548802814378470tion_a,Y22: produc1359548802814378470tion_a] :
      ( ( ( some_P2468934990214623435tion_a @ X2 )
        = ( some_P2468934990214623435tion_a @ Y22 ) )
      = ( X2 = Y22 ) ) ).

% option.inject
thf(fact_48_nat_Oinject,axiom,
    ! [X2: nat,Y22: nat] :
      ( ( ( suc @ X2 )
        = ( suc @ Y22 ) )
      = ( X2 = Y22 ) ) ).

% nat.inject
thf(fact_49_old_Onat_Oinject,axiom,
    ! [Nat: nat,Nat2: nat] :
      ( ( ( suc @ Nat )
        = ( suc @ Nat2 ) )
      = ( Nat = Nat2 ) ) ).

% old.nat.inject
thf(fact_50_prod_Oinject,axiom,
    ! [X1: b,X2: c,Y1: b,Y22: c] :
      ( ( ( product_Pair_b_c @ X1 @ X2 )
        = ( product_Pair_b_c @ Y1 @ Y22 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y22 ) ) ) ).

% prod.inject
thf(fact_51_prod_Oinject,axiom,
    ! [X1: product_prod_b_c,X2: produc3509355604313844263tion_a,Y1: product_prod_b_c,Y22: produc3509355604313844263tion_a] :
      ( ( ( produc7403377568244983126tion_a @ X1 @ X2 )
        = ( produc7403377568244983126tion_a @ Y1 @ Y22 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y22 ) ) ) ).

% prod.inject
thf(fact_52_prod_Oinject,axiom,
    ! [X1: option_a,X2: option_a,Y1: option_a,Y22: option_a] :
      ( ( ( produc9011544418120257559tion_a @ X1 @ X2 )
        = ( produc9011544418120257559tion_a @ Y1 @ Y22 ) )
      = ( ( X1 = Y1 )
        & ( X2 = Y22 ) ) ) ).

% prod.inject
thf(fact_53_old_Oprod_Oinject,axiom,
    ! [A: b,B: c,A2: b,B2: c] :
      ( ( ( product_Pair_b_c @ A @ B )
        = ( product_Pair_b_c @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_54_old_Oprod_Oinject,axiom,
    ! [A: product_prod_b_c,B: produc3509355604313844263tion_a,A2: product_prod_b_c,B2: produc3509355604313844263tion_a] :
      ( ( ( produc7403377568244983126tion_a @ A @ B )
        = ( produc7403377568244983126tion_a @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_55_old_Oprod_Oinject,axiom,
    ! [A: option_a,B: option_a,A2: option_a,B2: option_a] :
      ( ( ( produc9011544418120257559tion_a @ A @ B )
        = ( produc9011544418120257559tion_a @ A2 @ B2 ) )
      = ( ( A = A2 )
        & ( B = B2 ) ) ) ).

% old.prod.inject
thf(fact_56__092_060open_062FSM_Oh__obs_AM_Aq2_Ax_Ay_A_061_ANone_092_060close_062,axiom,
    ( ( h_obs_a_b_c @ m @ q2 @ x @ y )
    = none_a ) ).

% \<open>FSM.h_obs M q2 x y = None\<close>
thf(fact_57__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062q1_H_O_A_092_060lbrakk_062FSM_Oh__obs_AM_Aq2_Ax_Ay_A_061_ANone_059_AFSM_Oh__obs_AM_Aq1_Ax_Ay_A_061_ASome_Aq1_H_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
    ~ ( ( ( h_obs_a_b_c @ m @ q2 @ x @ y )
        = none_a )
     => ! [Q1: a] :
          ( ( h_obs_a_b_c @ m @ q1 @ x @ y )
         != ( some_a @ Q1 ) ) ) ).

% \<open>\<And>thesis. (\<And>q1'. \<lbrakk>FSM.h_obs M q2 x y = None; FSM.h_obs M q1 x y = Some q1'\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_58_not__Some__eq,axiom,
    ! [X3: option_a] :
      ( ( ! [Y3: a] :
            ( X3
           != ( some_a @ Y3 ) ) )
      = ( X3 = none_a ) ) ).

% not_Some_eq
thf(fact_59_not__Some__eq,axiom,
    ! [X3: option5121868808592388652tion_a] :
      ( ( ! [Y3: produc1359548802814378470tion_a] :
            ( X3
           != ( some_P2468934990214623435tion_a @ Y3 ) ) )
      = ( X3 = none_P2271573532998059335tion_a ) ) ).

% not_Some_eq
thf(fact_60_not__None__eq,axiom,
    ! [X3: option_a] :
      ( ( X3 != none_a )
      = ( ? [Y3: a] :
            ( X3
            = ( some_a @ Y3 ) ) ) ) ).

% not_None_eq
thf(fact_61_not__None__eq,axiom,
    ! [X3: option5121868808592388652tion_a] :
      ( ( X3 != none_P2271573532998059335tion_a )
      = ( ? [Y3: produc1359548802814378470tion_a] :
            ( X3
            = ( some_P2468934990214623435tion_a @ Y3 ) ) ) ) ).

% not_None_eq
thf(fact_62__092_060open_062_092_060And_062thesis_O_A_I_092_060And_062x_Ay_O_A_092_060lbrakk_062x_A_092_060in_062_AFSM_Oinputs_AM_059_Ay_A_092_060in_062_AFSM_Ooutputs_AM_059_A_IFSM_Oh__obs_AM_Aq1_Ax_Ay_A_061_ANone_J_A_092_060noteq_062_A_IFSM_Oh__obs_AM_Aq2_Ax_Ay_A_061_ANone_J_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_J_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
    ~ ! [X: b] :
        ( ( member_b @ X @ ( inputs_a_b_c @ m ) )
       => ! [Y2: c] :
            ( ( member_c @ Y2 @ ( outputs_a_b_c @ m ) )
           => ( ( ( h_obs_a_b_c @ m @ q1 @ X @ Y2 )
                = none_a )
              = ( ( h_obs_a_b_c @ m @ q2 @ X @ Y2 )
                = none_a ) ) ) ) ).

% \<open>\<And>thesis. (\<And>x y. \<lbrakk>x \<in> FSM.inputs M; y \<in> FSM.outputs M; (FSM.h_obs M q1 x y = None) \<noteq> (FSM.h_obs M q2 x y = None)\<rbrakk> \<Longrightarrow> thesis) \<Longrightarrow> thesis\<close>
thf(fact_63__092_060open_062f_A_Ix_M_Ay_J_A_061_ASome_A_I_Ix_M_Ay_J_M_ASome_Aq1_H_M_ANone_J_092_060close_062,axiom,
    ( ( f @ ( product_Pair_b_c @ x @ y ) )
    = ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ x @ y ) @ ( produc9011544418120257559tion_a @ ( some_a @ q12 ) @ none_a ) ) ) ) ).

% \<open>f (x, y) = Some ((x, y), Some q1', None)\<close>
thf(fact_64__092_060open_062_092_060And_062thesis_O_A_092_060lbrakk_062FSM_Oh__obs_AM_Aq1_Ax_Ay_A_061_ANone_A_092_060and_062_A_I_092_060exists_062q2_H_O_AFSM_Oh__obs_AM_Aq2_Ax_Ay_A_061_ASome_Aq2_H_J_A_092_060Longrightarrow_062_Athesis_059_AFSM_Oh__obs_AM_Aq2_Ax_Ay_A_061_ANone_A_092_060and_062_A_I_092_060exists_062q1_H_O_AFSM_Oh__obs_AM_Aq1_Ax_Ay_A_061_ASome_Aq1_H_J_A_092_060Longrightarrow_062_Athesis_092_060rbrakk_062_A_092_060Longrightarrow_062_Athesis_092_060close_062,axiom,
    ( ~ ( ( ( h_obs_a_b_c @ m @ q1 @ x @ y )
          = none_a )
        & ? [Q2: a] :
            ( ( h_obs_a_b_c @ m @ q2 @ x @ y )
            = ( some_a @ Q2 ) ) )
   => ( ( ( h_obs_a_b_c @ m @ q2 @ x @ y )
        = none_a )
      & ? [Q1: a] :
          ( ( h_obs_a_b_c @ m @ q1 @ x @ y )
          = ( some_a @ Q1 ) ) ) ) ).

% \<open>\<And>thesis. \<lbrakk>FSM.h_obs M q1 x y = None \<and> (\<exists>q2'. FSM.h_obs M q2 x y = Some q2') \<Longrightarrow> thesis; FSM.h_obs M q2 x y = None \<and> (\<exists>q1'. FSM.h_obs M q1 x y = Some q1') \<Longrightarrow> thesis\<rbrakk> \<Longrightarrow> thesis\<close>
thf(fact_65_combine__options__cases,axiom,
    ! [X3: option_a,P: option_a > option_a > $o,Y: option_a] :
      ( ( ( X3 = none_a )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_a )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: a,B3: a] :
              ( ( X3
                = ( some_a @ A3 ) )
             => ( ( Y
                  = ( some_a @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_66_combine__options__cases,axiom,
    ! [X3: option_a,P: option_a > option5121868808592388652tion_a > $o,Y: option5121868808592388652tion_a] :
      ( ( ( X3 = none_a )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_P2271573532998059335tion_a )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: a,B3: produc1359548802814378470tion_a] :
              ( ( X3
                = ( some_a @ A3 ) )
             => ( ( Y
                  = ( some_P2468934990214623435tion_a @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_67_combine__options__cases,axiom,
    ! [X3: option5121868808592388652tion_a,P: option5121868808592388652tion_a > option_a > $o,Y: option_a] :
      ( ( ( X3 = none_P2271573532998059335tion_a )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_a )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: produc1359548802814378470tion_a,B3: a] :
              ( ( X3
                = ( some_P2468934990214623435tion_a @ A3 ) )
             => ( ( Y
                  = ( some_a @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_68_combine__options__cases,axiom,
    ! [X3: option5121868808592388652tion_a,P: option5121868808592388652tion_a > option5121868808592388652tion_a > $o,Y: option5121868808592388652tion_a] :
      ( ( ( X3 = none_P2271573532998059335tion_a )
       => ( P @ X3 @ Y ) )
     => ( ( ( Y = none_P2271573532998059335tion_a )
         => ( P @ X3 @ Y ) )
       => ( ! [A3: produc1359548802814378470tion_a,B3: produc1359548802814378470tion_a] :
              ( ( X3
                = ( some_P2468934990214623435tion_a @ A3 ) )
             => ( ( Y
                  = ( some_P2468934990214623435tion_a @ B3 ) )
               => ( P @ X3 @ Y ) ) )
         => ( P @ X3 @ Y ) ) ) ) ).

% combine_options_cases
thf(fact_69_split__option__all,axiom,
    ( ( ^ [P2: option_a > $o] :
        ! [X4: option_a] : ( P2 @ X4 ) )
    = ( ^ [P3: option_a > $o] :
          ( ( P3 @ none_a )
          & ! [X5: a] : ( P3 @ ( some_a @ X5 ) ) ) ) ) ).

% split_option_all
thf(fact_70_split__option__all,axiom,
    ( ( ^ [P2: option5121868808592388652tion_a > $o] :
        ! [X4: option5121868808592388652tion_a] : ( P2 @ X4 ) )
    = ( ^ [P3: option5121868808592388652tion_a > $o] :
          ( ( P3 @ none_P2271573532998059335tion_a )
          & ! [X5: produc1359548802814378470tion_a] : ( P3 @ ( some_P2468934990214623435tion_a @ X5 ) ) ) ) ) ).

% split_option_all
thf(fact_71_split__option__ex,axiom,
    ( ( ^ [P2: option_a > $o] :
        ? [X4: option_a] : ( P2 @ X4 ) )
    = ( ^ [P3: option_a > $o] :
          ( ( P3 @ none_a )
          | ? [X5: a] : ( P3 @ ( some_a @ X5 ) ) ) ) ) ).

% split_option_ex
thf(fact_72_split__option__ex,axiom,
    ( ( ^ [P2: option5121868808592388652tion_a > $o] :
        ? [X4: option5121868808592388652tion_a] : ( P2 @ X4 ) )
    = ( ^ [P3: option5121868808592388652tion_a > $o] :
          ( ( P3 @ none_P2271573532998059335tion_a )
          | ? [X5: produc1359548802814378470tion_a] : ( P3 @ ( some_P2468934990214623435tion_a @ X5 ) ) ) ) ) ).

% split_option_ex
thf(fact_73_option_Oexhaust,axiom,
    ! [Y: option_a] :
      ( ( Y != none_a )
     => ~ ! [X22: a] :
            ( Y
           != ( some_a @ X22 ) ) ) ).

% option.exhaust
thf(fact_74_option_Oexhaust,axiom,
    ! [Y: option5121868808592388652tion_a] :
      ( ( Y != none_P2271573532998059335tion_a )
     => ~ ! [X22: produc1359548802814378470tion_a] :
            ( Y
           != ( some_P2468934990214623435tion_a @ X22 ) ) ) ).

% option.exhaust
thf(fact_75_mem__Collect__eq,axiom,
    ! [A: produc1359548802814378470tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ( member5139186223151194895tion_a @ A @ ( collec5181485912584638289tion_a @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_76_mem__Collect__eq,axiom,
    ! [A: a,P: a > $o] :
      ( ( member_a @ A @ ( collect_a @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_77_mem__Collect__eq,axiom,
    ! [A: c,P: c > $o] :
      ( ( member_c @ A @ ( collect_c @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_78_mem__Collect__eq,axiom,
    ! [A: product_prod_b_c,P: product_prod_b_c > $o] :
      ( ( member7862447941013992593od_b_c @ A @ ( collec548942224018234067od_b_c @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_79_mem__Collect__eq,axiom,
    ! [A: b,P: b > $o] :
      ( ( member_b @ A @ ( collect_b @ P ) )
      = ( P @ A ) ) ).

% mem_Collect_eq
thf(fact_80_Collect__mem__eq,axiom,
    ! [A4: set_Pr165121870232099142tion_a] :
      ( ( collec5181485912584638289tion_a
        @ ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_81_Collect__mem__eq,axiom,
    ! [A4: set_a] :
      ( ( collect_a
        @ ^ [X5: a] : ( member_a @ X5 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_82_Collect__mem__eq,axiom,
    ! [A4: set_c] :
      ( ( collect_c
        @ ^ [X5: c] : ( member_c @ X5 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_83_Collect__mem__eq,axiom,
    ! [A4: set_Product_prod_b_c] :
      ( ( collec548942224018234067od_b_c
        @ ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_84_Collect__mem__eq,axiom,
    ! [A4: set_b] :
      ( ( collect_b
        @ ^ [X5: b] : ( member_b @ X5 @ A4 ) )
      = A4 ) ).

% Collect_mem_eq
thf(fact_85_option_OdiscI,axiom,
    ! [Option: option_a,X2: a] :
      ( ( Option
        = ( some_a @ X2 ) )
     => ( Option != none_a ) ) ).

% option.discI
thf(fact_86_option_OdiscI,axiom,
    ! [Option: option5121868808592388652tion_a,X2: produc1359548802814378470tion_a] :
      ( ( Option
        = ( some_P2468934990214623435tion_a @ X2 ) )
     => ( Option != none_P2271573532998059335tion_a ) ) ).

% option.discI
thf(fact_87_option_Odistinct_I1_J,axiom,
    ! [X2: a] :
      ( none_a
     != ( some_a @ X2 ) ) ).

% option.distinct(1)
thf(fact_88_option_Odistinct_I1_J,axiom,
    ! [X2: produc1359548802814378470tion_a] :
      ( none_P2271573532998059335tion_a
     != ( some_P2468934990214623435tion_a @ X2 ) ) ).

% option.distinct(1)
thf(fact_89_h__obs__state,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Q3: a] :
      ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
        = ( some_a @ Q3 ) )
     => ( member_a @ Q3 @ ( states_a_b_c @ M ) ) ) ).

% h_obs_state
thf(fact_90_prod__induct3,axiom,
    ! [P: produc1359548802814378470tion_a > $o,X3: produc1359548802814378470tion_a] :
      ( ! [A3: product_prod_b_c,B3: option_a,C: option_a] : ( P @ ( produc7403377568244983126tion_a @ A3 @ ( produc9011544418120257559tion_a @ B3 @ C ) ) )
     => ( P @ X3 ) ) ).

% prod_induct3
thf(fact_91_prod__cases3,axiom,
    ! [Y: produc1359548802814378470tion_a] :
      ~ ! [A3: product_prod_b_c,B3: option_a,C: option_a] :
          ( Y
         != ( produc7403377568244983126tion_a @ A3 @ ( produc9011544418120257559tion_a @ B3 @ C ) ) ) ).

% prod_cases3
thf(fact_92_Pair__inject,axiom,
    ! [A: b,B: c,A2: b,B2: c] :
      ( ( ( product_Pair_b_c @ A @ B )
        = ( product_Pair_b_c @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_93_Pair__inject,axiom,
    ! [A: product_prod_b_c,B: produc3509355604313844263tion_a,A2: product_prod_b_c,B2: produc3509355604313844263tion_a] :
      ( ( ( produc7403377568244983126tion_a @ A @ B )
        = ( produc7403377568244983126tion_a @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_94_Pair__inject,axiom,
    ! [A: option_a,B: option_a,A2: option_a,B2: option_a] :
      ( ( ( produc9011544418120257559tion_a @ A @ B )
        = ( produc9011544418120257559tion_a @ A2 @ B2 ) )
     => ~ ( ( A = A2 )
         => ( B != B2 ) ) ) ).

% Pair_inject
thf(fact_95_prod__cases,axiom,
    ! [P: product_prod_b_c > $o,P4: product_prod_b_c] :
      ( ! [A3: b,B3: c] : ( P @ ( product_Pair_b_c @ A3 @ B3 ) )
     => ( P @ P4 ) ) ).

% prod_cases
thf(fact_96_prod__cases,axiom,
    ! [P: produc1359548802814378470tion_a > $o,P4: produc1359548802814378470tion_a] :
      ( ! [A3: product_prod_b_c,B3: produc3509355604313844263tion_a] : ( P @ ( produc7403377568244983126tion_a @ A3 @ B3 ) )
     => ( P @ P4 ) ) ).

% prod_cases
thf(fact_97_prod__cases,axiom,
    ! [P: produc3509355604313844263tion_a > $o,P4: produc3509355604313844263tion_a] :
      ( ! [A3: option_a,B3: option_a] : ( P @ ( produc9011544418120257559tion_a @ A3 @ B3 ) )
     => ( P @ P4 ) ) ).

% prod_cases
thf(fact_98_surj__pair,axiom,
    ! [P4: product_prod_b_c] :
    ? [X: b,Y2: c] :
      ( P4
      = ( product_Pair_b_c @ X @ Y2 ) ) ).

% surj_pair
thf(fact_99_surj__pair,axiom,
    ! [P4: produc1359548802814378470tion_a] :
    ? [X: product_prod_b_c,Y2: produc3509355604313844263tion_a] :
      ( P4
      = ( produc7403377568244983126tion_a @ X @ Y2 ) ) ).

% surj_pair
thf(fact_100_surj__pair,axiom,
    ! [P4: produc3509355604313844263tion_a] :
    ? [X: option_a,Y2: option_a] :
      ( P4
      = ( produc9011544418120257559tion_a @ X @ Y2 ) ) ).

% surj_pair
thf(fact_101_old_Oprod_Oexhaust,axiom,
    ! [Y: product_prod_b_c] :
      ~ ! [A3: b,B3: c] :
          ( Y
         != ( product_Pair_b_c @ A3 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_102_old_Oprod_Oexhaust,axiom,
    ! [Y: produc1359548802814378470tion_a] :
      ~ ! [A3: product_prod_b_c,B3: produc3509355604313844263tion_a] :
          ( Y
         != ( produc7403377568244983126tion_a @ A3 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_103_old_Oprod_Oexhaust,axiom,
    ! [Y: produc3509355604313844263tion_a] :
      ~ ! [A3: option_a,B3: option_a] :
          ( Y
         != ( produc9011544418120257559tion_a @ A3 @ B3 ) ) ).

% old.prod.exhaust
thf(fact_104_n__not__Suc__n,axiom,
    ! [N: nat] :
      ( N
     != ( suc @ N ) ) ).

% n_not_Suc_n
thf(fact_105_Suc__inject,axiom,
    ! [X3: nat,Y: nat] :
      ( ( ( suc @ X3 )
        = ( suc @ Y ) )
     => ( X3 = Y ) ) ).

% Suc_inject
thf(fact_106_map__filter__Nil,axiom,
    ! [F1: b > option_b,Xs: list_b] :
      ( ( ( map_filter_b_b @ F1 @ Xs )
        = nil_b )
      = ( ! [X5: b] :
            ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_b ) ) ) ) ).

% map_filter_Nil
thf(fact_107_map__filter__Nil,axiom,
    ! [F1: b > option_c,Xs: list_b] :
      ( ( ( map_filter_b_c @ F1 @ Xs )
        = nil_c )
      = ( ! [X5: b] :
            ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_c ) ) ) ) ).

% map_filter_Nil
thf(fact_108_map__filter__Nil,axiom,
    ! [F1: c > option_b,Xs: list_c] :
      ( ( ( map_filter_c_b @ F1 @ Xs )
        = nil_b )
      = ( ! [X5: c] :
            ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_b ) ) ) ) ).

% map_filter_Nil
thf(fact_109_map__filter__Nil,axiom,
    ! [F1: c > option_c,Xs: list_c] :
      ( ( ( map_filter_c_c @ F1 @ Xs )
        = nil_c )
      = ( ! [X5: c] :
            ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_c ) ) ) ) ).

% map_filter_Nil
thf(fact_110_map__filter__Nil,axiom,
    ! [F1: a > option_b,Xs: list_a] :
      ( ( ( map_filter_a_b @ F1 @ Xs )
        = nil_b )
      = ( ! [X5: a] :
            ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_b ) ) ) ) ).

% map_filter_Nil
thf(fact_111_map__filter__Nil,axiom,
    ! [F1: a > option_c,Xs: list_a] :
      ( ( ( map_filter_a_c @ F1 @ Xs )
        = nil_c )
      = ( ! [X5: a] :
            ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_c ) ) ) ) ).

% map_filter_Nil
thf(fact_112_map__filter__Nil,axiom,
    ! [F1: b > option_a,Xs: list_b] :
      ( ( ( map_filter_b_a @ F1 @ Xs )
        = nil_a )
      = ( ! [X5: b] :
            ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_a ) ) ) ) ).

% map_filter_Nil
thf(fact_113_map__filter__Nil,axiom,
    ! [F1: c > option_a,Xs: list_c] :
      ( ( ( map_filter_c_a @ F1 @ Xs )
        = nil_a )
      = ( ! [X5: c] :
            ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_a ) ) ) ) ).

% map_filter_Nil
thf(fact_114_map__filter__Nil,axiom,
    ! [F1: a > option_a,Xs: list_a] :
      ( ( ( map_filter_a_a @ F1 @ Xs )
        = nil_a )
      = ( ! [X5: a] :
            ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_a ) ) ) ) ).

% map_filter_Nil
thf(fact_115_map__filter__Nil,axiom,
    ! [F1: product_prod_b_c > option_b,Xs: list_P903359562653991662od_b_c] :
      ( ( ( map_fi694150099910991841_b_c_b @ F1 @ Xs )
        = nil_b )
      = ( ! [X5: product_prod_b_c] :
            ( ( member7862447941013992593od_b_c @ X5 @ ( set_Product_prod_b_c2 @ Xs ) )
           => ( ( F1 @ X5 )
              = none_b ) ) ) ) ).

% map_filter_Nil
thf(fact_116_f3,axiom,
    ! [X3: b,Y: c] :
      ( ( ( f @ ( product_Pair_b_c @ X3 @ Y ) )
       != none_P2271573532998059335tion_a )
     => ( ( ( h_obs_a_b_c @ m @ q1 @ X3 @ Y )
         != none_a )
        | ( ( h_obs_a_b_c @ m @ q2 @ X3 @ Y )
         != none_a ) ) ) ).

% f3
thf(fact_117_f1,axiom,
    ! [X3: b,Y: c] :
      ( ( ( f @ ( product_Pair_b_c @ X3 @ Y ) )
       != none_P2271573532998059335tion_a )
     => ( ( f @ ( product_Pair_b_c @ X3 @ Y ) )
        = ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X3 @ Y ) @ ( produc9011544418120257559tion_a @ ( h_obs_a_b_c @ m @ q1 @ X3 @ Y ) @ ( h_obs_a_b_c @ m @ q2 @ X3 @ Y ) ) ) ) ) ) ).

% f1
thf(fact_118_h__obs__io_I2_J,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Q3: a] :
      ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
        = ( some_a @ Q3 ) )
     => ( member_c @ Y @ ( outputs_a_b_c @ M ) ) ) ).

% h_obs_io(2)
thf(fact_119_h__obs__io_I1_J,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Q3: a] :
      ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
        = ( some_a @ Q3 ) )
     => ( member_b @ X3 @ ( inputs_a_b_c @ M ) ) ) ).

% h_obs_io(1)
thf(fact_120_h__obs_Ocases,axiom,
    ! [X3: produc5865029215095210593tion_a] :
      ~ ! [M2: fSM_fs6691076384796814508tion_a,Q4: product_prod_b_c,X: option_a,Y2: option_a] :
          ( X3
         != ( produc6828275024444585425tion_a @ M2 @ ( produc7403377568244983126tion_a @ Q4 @ ( produc9011544418120257559tion_a @ X @ Y2 ) ) ) ) ).

% h_obs.cases
thf(fact_121_list__ordered__pairs__set__containment,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a,Y: produc1359548802814378470tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
     => ( ( member5139186223151194895tion_a @ Y @ ( set_Pr150857188848084347tion_a @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member1364567196453864272tion_a @ ( produc6894522847932232471tion_a @ X3 @ Y ) @ ( set_Pr3522298340653576636tion_a @ ( list_o3332032289628391213tion_a @ Xs ) ) )
            | ( member1364567196453864272tion_a @ ( produc6894522847932232471tion_a @ Y @ X3 ) @ ( set_Pr3522298340653576636tion_a @ ( list_o3332032289628391213tion_a @ Xs ) ) ) ) ) ) ) ).

% list_ordered_pairs_set_containment
thf(fact_122_list__ordered__pairs__set__containment,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c,Y: product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
     => ( ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member7104721839413753296od_b_c @ ( produc6366901981060558487od_b_c @ X3 @ Y ) @ ( set_Pr7267323205303737404od_b_c @ ( list_o804723041229831855od_b_c @ Xs ) ) )
            | ( member7104721839413753296od_b_c @ ( produc6366901981060558487od_b_c @ Y @ X3 ) @ ( set_Pr7267323205303737404od_b_c @ ( list_o804723041229831855od_b_c @ Xs ) ) ) ) ) ) ) ).

% list_ordered_pairs_set_containment
thf(fact_123_list__ordered__pairs__set__containment,axiom,
    ! [X3: b,Xs: list_b,Y: b] :
      ( ( member_b @ X3 @ ( set_b2 @ Xs ) )
     => ( ( member_b @ Y @ ( set_b2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member7862447936710763792od_b_b @ ( product_Pair_b_b @ X3 @ Y ) @ ( set_Product_prod_b_b2 @ ( list_ordered_pairs_b @ Xs ) ) )
            | ( member7862447936710763792od_b_b @ ( product_Pair_b_b @ Y @ X3 ) @ ( set_Product_prod_b_b2 @ ( list_ordered_pairs_b @ Xs ) ) ) ) ) ) ) ).

% list_ordered_pairs_set_containment
thf(fact_124_list__ordered__pairs__set__containment,axiom,
    ! [X3: c,Xs: list_c,Y: c] :
      ( ( member_c @ X3 @ ( set_c2 @ Xs ) )
     => ( ( member_c @ Y @ ( set_c2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member5074992359041316560od_c_c @ ( product_Pair_c_c @ X3 @ Y ) @ ( set_Product_prod_c_c2 @ ( list_ordered_pairs_c @ Xs ) ) )
            | ( member5074992359041316560od_c_c @ ( product_Pair_c_c @ Y @ X3 ) @ ( set_Product_prod_c_c2 @ ( list_ordered_pairs_c @ Xs ) ) ) ) ) ) ) ).

% list_ordered_pairs_set_containment
thf(fact_125_list__ordered__pairs__set__containment,axiom,
    ! [X3: a,Xs: list_a,Y: a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
     => ( ( member_a @ Y @ ( set_a2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ X3 @ Y ) @ ( set_Product_prod_a_a2 @ ( list_ordered_pairs_a @ Xs ) ) )
            | ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ Y @ X3 ) @ ( set_Product_prod_a_a2 @ ( list_ordered_pairs_a @ Xs ) ) ) ) ) ) ) ).

% list_ordered_pairs_set_containment
thf(fact_126_list__ordered__pairs__set__containment,axiom,
    ! [X3: option_a,Xs: list_option_a,Y: option_a] :
      ( ( member_option_a @ X3 @ ( set_option_a2 @ Xs ) )
     => ( ( member_option_a @ Y @ ( set_option_a2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ ( set_Pr948796958549772220tion_a @ ( list_o4254566017930142219tion_a @ Xs ) ) )
            | ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ Y @ X3 ) @ ( set_Pr948796958549772220tion_a @ ( list_o4254566017930142219tion_a @ Xs ) ) ) ) ) ) ) ).

% list_ordered_pairs_set_containment
thf(fact_127_that,axiom,
    ! [X3: b,Y: c] :
      ( ( ( select6043575893837601639_a_b_c @ m @ q1 @ q2 @ ( suc @ k ) )
        = ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X3 @ Y ) @ ( produc9011544418120257559tion_a @ ( h_obs_a_b_c @ m @ q1 @ X3 @ Y ) @ ( h_obs_a_b_c @ m @ q2 @ X3 @ Y ) ) ) )
     => ( ! [Q1: a,Q2: a] :
            ( ( ( h_obs_a_b_c @ m @ q1 @ X3 @ Y )
              = ( some_a @ Q1 ) )
           => ( ( ( h_obs_a_b_c @ m @ q2 @ X3 @ Y )
                = ( some_a @ Q2 ) )
             => ( ( ofsm_table_a_b_c @ m
                  @ ^ [Q5: a] : ( states_a_b_c @ m )
                  @ k
                  @ Q1 )
               != ( ofsm_table_a_b_c @ m
                  @ ^ [Q5: a] : ( states_a_b_c @ m )
                  @ k
                  @ Q2 ) ) ) )
       => ( ( ( ( h_obs_a_b_c @ m @ q1 @ X3 @ Y )
             != none_a )
            | ( ( h_obs_a_b_c @ m @ q2 @ X3 @ Y )
             != none_a ) )
         => thesis ) ) ) ).

% that
thf(fact_128_h__obs__None,axiom,
    ! [M: fsm_op7083421644242023300tion_a,Q: option_a,X3: product_prod_b_c,Y: option_a] :
      ( ( observ1716698870131812264tion_a @ M )
     => ( ( ( h_obs_1513062369990395059tion_a @ M @ Q @ X3 @ Y )
          = none_option_a )
        = ( ~ ? [Q6: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q @ ( produc7403377568244983126tion_a @ X3 @ ( produc9011544418120257559tion_a @ Y @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ M ) ) ) ) ) ).

% h_obs_None
thf(fact_129_h__obs__None,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c] :
      ( ( observable_a_b_c @ M )
     => ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
          = none_a )
        = ( ~ ? [Q6: a] : ( member5502040268208861279od_c_a @ ( produc5762801557034676134od_c_a @ Q @ ( produc3440865914000881661od_c_a @ X3 @ ( product_Pair_c_a @ Y @ Q6 ) ) ) @ ( transitions_a_b_c @ M ) ) ) ) ) ).

% h_obs_None
thf(fact_130_non__sym__dist__pairs__elems__distinct_I2_J,axiom,
    ! [X3: produc1359548802814378470tion_a,Y: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member1364567196453864272tion_a @ ( produc6894522847932232471tion_a @ X3 @ Y ) @ ( set_Pr3522298340653576636tion_a @ ( non_sy8571533894597929818tion_a @ Xs ) ) )
     => ( member5139186223151194895tion_a @ Y @ ( set_Pr150857188848084347tion_a @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(2)
thf(fact_131_non__sym__dist__pairs__elems__distinct_I2_J,axiom,
    ! [X3: product_prod_b_c,Y: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7104721839413753296od_b_c @ ( produc6366901981060558487od_b_c @ X3 @ Y ) @ ( set_Pr7267323205303737404od_b_c @ ( non_sy6082845619963730908od_b_c @ Xs ) ) )
     => ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(2)
thf(fact_132_non__sym__dist__pairs__elems__distinct_I2_J,axiom,
    ! [X3: b,Y: b,Xs: list_b] :
      ( ( member7862447936710763792od_b_b @ ( product_Pair_b_b @ X3 @ Y ) @ ( set_Product_prod_b_b2 @ ( non_sym_dist_pairs_b @ Xs ) ) )
     => ( member_b @ Y @ ( set_b2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(2)
thf(fact_133_non__sym__dist__pairs__elems__distinct_I2_J,axiom,
    ! [X3: c,Y: c,Xs: list_c] :
      ( ( member5074992359041316560od_c_c @ ( product_Pair_c_c @ X3 @ Y ) @ ( set_Product_prod_c_c2 @ ( non_sym_dist_pairs_c @ Xs ) ) )
     => ( member_c @ Y @ ( set_c2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(2)
thf(fact_134_non__sym__dist__pairs__elems__distinct_I2_J,axiom,
    ! [X3: a,Y: a,Xs: list_a] :
      ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ X3 @ Y ) @ ( set_Product_prod_a_a2 @ ( non_sym_dist_pairs_a @ Xs ) ) )
     => ( member_a @ Y @ ( set_a2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(2)
thf(fact_135_non__sym__dist__pairs__elems__distinct_I2_J,axiom,
    ! [X3: option_a,Y: option_a,Xs: list_option_a] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) )
     => ( member_option_a @ Y @ ( set_option_a2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(2)
thf(fact_136_assms_I4_J,axiom,
    ( ( ofsm_table_a_b_c @ m
      @ ^ [Q5: a] : ( states_a_b_c @ m )
      @ ( suc @ k )
      @ q1 )
   != ( ofsm_table_a_b_c @ m
      @ ^ [Q5: a] : ( states_a_b_c @ m )
      @ ( suc @ k )
      @ q2 ) ) ).

% assms(4)
thf(fact_137_f2,axiom,
    ! [X3: b,Y: c,Q12: a,Q22: a] :
      ( ( ( f @ ( product_Pair_b_c @ X3 @ Y ) )
        = ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X3 @ Y ) @ ( produc9011544418120257559tion_a @ ( some_a @ Q12 ) @ ( some_a @ Q22 ) ) ) ) )
     => ( ( ofsm_table_a_b_c @ m
          @ ^ [Q5: a] : ( states_a_b_c @ m )
          @ k
          @ Q12 )
       != ( ofsm_table_a_b_c @ m
          @ ^ [Q5: a] : ( states_a_b_c @ m )
          @ k
          @ Q22 ) ) ) ).

% f2
thf(fact_138_transpose_Ocases,axiom,
    ! [X3: list_l7195309243935277682tion_a] :
      ( ( X3 != nil_li683225626544421234tion_a )
     => ( ! [Xss: list_l7195309243935277682tion_a] :
            ( X3
           != ( cons_l4387309880990760226tion_a @ nil_Pr596483954593762796tion_a @ Xss ) )
       => ~ ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a,Xss: list_l7195309243935277682tion_a] :
              ( X3
             != ( cons_l4387309880990760226tion_a @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_139_transpose_Ocases,axiom,
    ! [X3: list_l8907847357763382004od_b_c] :
      ( ( X3 != nil_li8071162985807626740od_b_c )
     => ( ! [Xss: list_l8907847357763382004od_b_c] :
            ( X3
           != ( cons_l342771267123639716od_b_c @ nil_Product_prod_b_c @ Xss ) )
       => ~ ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Xss: list_l8907847357763382004od_b_c] :
              ( X3
             != ( cons_l342771267123639716od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_140_transpose_Ocases,axiom,
    ! [X3: list_list_b] :
      ( ( X3 != nil_list_b )
     => ( ! [Xss: list_list_b] :
            ( X3
           != ( cons_list_b @ nil_b @ Xss ) )
       => ~ ! [X: b,Xs2: list_b,Xss: list_list_b] :
              ( X3
             != ( cons_list_b @ ( cons_b @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_141_transpose_Ocases,axiom,
    ! [X3: list_list_c] :
      ( ( X3 != nil_list_c )
     => ( ! [Xss: list_list_c] :
            ( X3
           != ( cons_list_c @ nil_c @ Xss ) )
       => ~ ! [X: c,Xs2: list_c,Xss: list_list_c] :
              ( X3
             != ( cons_list_c @ ( cons_c @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_142_transpose_Ocases,axiom,
    ! [X3: list_list_a] :
      ( ( X3 != nil_list_a )
     => ( ! [Xss: list_list_a] :
            ( X3
           != ( cons_list_a @ nil_a @ Xss ) )
       => ~ ! [X: a,Xs2: list_a,Xss: list_list_a] :
              ( X3
             != ( cons_list_a @ ( cons_a @ X @ Xs2 ) @ Xss ) ) ) ) ).

% transpose.cases
thf(fact_143_ofsm__table__containment,axiom,
    ! [Q: a,M: fsm_a_b_c,F: a > set_a,K: nat] :
      ( ( member_a @ Q @ ( states_a_b_c @ M ) )
     => ( ! [Q4: a] :
            ( ( member_a @ Q4 @ ( states_a_b_c @ M ) )
           => ( member_a @ Q4 @ ( F @ Q4 ) ) )
       => ( member_a @ Q @ ( ofsm_table_a_b_c @ M @ F @ K @ Q ) ) ) ) ).

% ofsm_table_containment
thf(fact_144_list_Odistinct_I1_J,axiom,
    ! [X21: produc1359548802814378470tion_a,X222: list_P7785822056432494700tion_a] :
      ( nil_Pr596483954593762796tion_a
     != ( cons_P7206946803070396828tion_a @ X21 @ X222 ) ) ).

% list.distinct(1)
thf(fact_145_list_Odistinct_I1_J,axiom,
    ! [X21: product_prod_b_c,X222: list_P903359562653991662od_b_c] :
      ( nil_Product_prod_b_c
     != ( cons_P4529483553340347422od_b_c @ X21 @ X222 ) ) ).

% list.distinct(1)
thf(fact_146_list_Odistinct_I1_J,axiom,
    ! [X21: b,X222: list_b] :
      ( nil_b
     != ( cons_b @ X21 @ X222 ) ) ).

% list.distinct(1)
thf(fact_147_list_Odistinct_I1_J,axiom,
    ! [X21: c,X222: list_c] :
      ( nil_c
     != ( cons_c @ X21 @ X222 ) ) ).

% list.distinct(1)
thf(fact_148_list_Odistinct_I1_J,axiom,
    ! [X21: a,X222: list_a] :
      ( nil_a
     != ( cons_a @ X21 @ X222 ) ) ).

% list.distinct(1)
thf(fact_149_list_OdiscI,axiom,
    ! [List: list_P7785822056432494700tion_a,X21: produc1359548802814378470tion_a,X222: list_P7785822056432494700tion_a] :
      ( ( List
        = ( cons_P7206946803070396828tion_a @ X21 @ X222 ) )
     => ( List != nil_Pr596483954593762796tion_a ) ) ).

% list.discI
thf(fact_150_list_OdiscI,axiom,
    ! [List: list_P903359562653991662od_b_c,X21: product_prod_b_c,X222: list_P903359562653991662od_b_c] :
      ( ( List
        = ( cons_P4529483553340347422od_b_c @ X21 @ X222 ) )
     => ( List != nil_Product_prod_b_c ) ) ).

% list.discI
thf(fact_151_list_OdiscI,axiom,
    ! [List: list_b,X21: b,X222: list_b] :
      ( ( List
        = ( cons_b @ X21 @ X222 ) )
     => ( List != nil_b ) ) ).

% list.discI
thf(fact_152_list_OdiscI,axiom,
    ! [List: list_c,X21: c,X222: list_c] :
      ( ( List
        = ( cons_c @ X21 @ X222 ) )
     => ( List != nil_c ) ) ).

% list.discI
thf(fact_153_list_OdiscI,axiom,
    ! [List: list_a,X21: a,X222: list_a] :
      ( ( List
        = ( cons_a @ X21 @ X222 ) )
     => ( List != nil_a ) ) ).

% list.discI
thf(fact_154_list_Oexhaust,axiom,
    ! [Y: list_P7785822056432494700tion_a] :
      ( ( Y != nil_Pr596483954593762796tion_a )
     => ~ ! [X212: produc1359548802814378470tion_a,X223: list_P7785822056432494700tion_a] :
            ( Y
           != ( cons_P7206946803070396828tion_a @ X212 @ X223 ) ) ) ).

% list.exhaust
thf(fact_155_list_Oexhaust,axiom,
    ! [Y: list_P903359562653991662od_b_c] :
      ( ( Y != nil_Product_prod_b_c )
     => ~ ! [X212: product_prod_b_c,X223: list_P903359562653991662od_b_c] :
            ( Y
           != ( cons_P4529483553340347422od_b_c @ X212 @ X223 ) ) ) ).

% list.exhaust
thf(fact_156_list_Oexhaust,axiom,
    ! [Y: list_b] :
      ( ( Y != nil_b )
     => ~ ! [X212: b,X223: list_b] :
            ( Y
           != ( cons_b @ X212 @ X223 ) ) ) ).

% list.exhaust
thf(fact_157_list_Oexhaust,axiom,
    ! [Y: list_c] :
      ( ( Y != nil_c )
     => ~ ! [X212: c,X223: list_c] :
            ( Y
           != ( cons_c @ X212 @ X223 ) ) ) ).

% list.exhaust
thf(fact_158_list_Oexhaust,axiom,
    ! [Y: list_a] :
      ( ( Y != nil_a )
     => ~ ! [X212: a,X223: list_a] :
            ( Y
           != ( cons_a @ X212 @ X223 ) ) ) ).

% list.exhaust
thf(fact_159_min__list_Ocases,axiom,
    ! [X3: list_P903359562653991662od_b_c] :
      ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
          ( X3
         != ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) )
     => ( X3 = nil_Product_prod_b_c ) ) ).

% min_list.cases
thf(fact_160_min__list_Ocases,axiom,
    ! [X3: list_b] :
      ( ! [X: b,Xs2: list_b] :
          ( X3
         != ( cons_b @ X @ Xs2 ) )
     => ( X3 = nil_b ) ) ).

% min_list.cases
thf(fact_161_min__list_Ocases,axiom,
    ! [X3: list_c] :
      ( ! [X: c,Xs2: list_c] :
          ( X3
         != ( cons_c @ X @ Xs2 ) )
     => ( X3 = nil_c ) ) ).

% min_list.cases
thf(fact_162_remdups__adj_Ocases,axiom,
    ! [X3: list_P7785822056432494700tion_a] :
      ( ( X3 != nil_Pr596483954593762796tion_a )
     => ( ! [X: produc1359548802814378470tion_a] :
            ( X3
           != ( cons_P7206946803070396828tion_a @ X @ nil_Pr596483954593762796tion_a ) )
       => ~ ! [X: produc1359548802814378470tion_a,Y2: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
              ( X3
             != ( cons_P7206946803070396828tion_a @ X @ ( cons_P7206946803070396828tion_a @ Y2 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_163_remdups__adj_Ocases,axiom,
    ! [X3: list_P903359562653991662od_b_c] :
      ( ( X3 != nil_Product_prod_b_c )
     => ( ! [X: product_prod_b_c] :
            ( X3
           != ( cons_P4529483553340347422od_b_c @ X @ nil_Product_prod_b_c ) )
       => ~ ! [X: product_prod_b_c,Y2: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
              ( X3
             != ( cons_P4529483553340347422od_b_c @ X @ ( cons_P4529483553340347422od_b_c @ Y2 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_164_remdups__adj_Ocases,axiom,
    ! [X3: list_b] :
      ( ( X3 != nil_b )
     => ( ! [X: b] :
            ( X3
           != ( cons_b @ X @ nil_b ) )
       => ~ ! [X: b,Y2: b,Xs2: list_b] :
              ( X3
             != ( cons_b @ X @ ( cons_b @ Y2 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_165_remdups__adj_Ocases,axiom,
    ! [X3: list_c] :
      ( ( X3 != nil_c )
     => ( ! [X: c] :
            ( X3
           != ( cons_c @ X @ nil_c ) )
       => ~ ! [X: c,Y2: c,Xs2: list_c] :
              ( X3
             != ( cons_c @ X @ ( cons_c @ Y2 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_166_remdups__adj_Ocases,axiom,
    ! [X3: list_a] :
      ( ( X3 != nil_a )
     => ( ! [X: a] :
            ( X3
           != ( cons_a @ X @ nil_a ) )
       => ~ ! [X: a,Y2: a,Xs2: list_a] :
              ( X3
             != ( cons_a @ X @ ( cons_a @ Y2 @ Xs2 ) ) ) ) ) ).

% remdups_adj.cases
thf(fact_167_linear__order__from__list__position_H_Ocases,axiom,
    ! [X3: list_P7785822056432494700tion_a] :
      ( ( X3 != nil_Pr596483954593762796tion_a )
     => ~ ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
            ( X3
           != ( cons_P7206946803070396828tion_a @ X @ Xs2 ) ) ) ).

% linear_order_from_list_position'.cases
thf(fact_168_linear__order__from__list__position_H_Ocases,axiom,
    ! [X3: list_P903359562653991662od_b_c] :
      ( ( X3 != nil_Product_prod_b_c )
     => ~ ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
            ( X3
           != ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) ) ) ).

% linear_order_from_list_position'.cases
thf(fact_169_linear__order__from__list__position_H_Ocases,axiom,
    ! [X3: list_b] :
      ( ( X3 != nil_b )
     => ~ ! [X: b,Xs2: list_b] :
            ( X3
           != ( cons_b @ X @ Xs2 ) ) ) ).

% linear_order_from_list_position'.cases
thf(fact_170_linear__order__from__list__position_H_Ocases,axiom,
    ! [X3: list_c] :
      ( ( X3 != nil_c )
     => ~ ! [X: c,Xs2: list_c] :
            ( X3
           != ( cons_c @ X @ Xs2 ) ) ) ).

% linear_order_from_list_position'.cases
thf(fact_171_linear__order__from__list__position_H_Ocases,axiom,
    ! [X3: list_a] :
      ( ( X3 != nil_a )
     => ~ ! [X: a,Xs2: list_a] :
            ( X3
           != ( cons_a @ X @ Xs2 ) ) ) ).

% linear_order_from_list_position'.cases
thf(fact_172_neq__Nil__conv,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( Xs != nil_Pr596483954593762796tion_a )
      = ( ? [Y3: produc1359548802814378470tion_a,Ys: list_P7785822056432494700tion_a] :
            ( Xs
            = ( cons_P7206946803070396828tion_a @ Y3 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_173_neq__Nil__conv,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( Xs != nil_Product_prod_b_c )
      = ( ? [Y3: product_prod_b_c,Ys: list_P903359562653991662od_b_c] :
            ( Xs
            = ( cons_P4529483553340347422od_b_c @ Y3 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_174_neq__Nil__conv,axiom,
    ! [Xs: list_b] :
      ( ( Xs != nil_b )
      = ( ? [Y3: b,Ys: list_b] :
            ( Xs
            = ( cons_b @ Y3 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_175_neq__Nil__conv,axiom,
    ! [Xs: list_c] :
      ( ( Xs != nil_c )
      = ( ? [Y3: c,Ys: list_c] :
            ( Xs
            = ( cons_c @ Y3 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_176_neq__Nil__conv,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
      = ( ? [Y3: a,Ys: list_a] :
            ( Xs
            = ( cons_a @ Y3 @ Ys ) ) ) ) ).

% neq_Nil_conv
thf(fact_177_list__induct2_H,axiom,
    ! [P: list_b > list_b > $o,Xs: list_b,Ys2: list_b] :
      ( ( P @ nil_b @ nil_b )
     => ( ! [X: b,Xs2: list_b] : ( P @ ( cons_b @ X @ Xs2 ) @ nil_b )
       => ( ! [Y2: b,Ys3: list_b] : ( P @ nil_b @ ( cons_b @ Y2 @ Ys3 ) )
         => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_178_list__induct2_H,axiom,
    ! [P: list_b > list_c > $o,Xs: list_b,Ys2: list_c] :
      ( ( P @ nil_b @ nil_c )
     => ( ! [X: b,Xs2: list_b] : ( P @ ( cons_b @ X @ Xs2 ) @ nil_c )
       => ( ! [Y2: c,Ys3: list_c] : ( P @ nil_b @ ( cons_c @ Y2 @ Ys3 ) )
         => ( ! [X: b,Xs2: list_b,Y2: c,Ys3: list_c] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_179_list__induct2_H,axiom,
    ! [P: list_b > list_a > $o,Xs: list_b,Ys2: list_a] :
      ( ( P @ nil_b @ nil_a )
     => ( ! [X: b,Xs2: list_b] : ( P @ ( cons_b @ X @ Xs2 ) @ nil_a )
       => ( ! [Y2: a,Ys3: list_a] : ( P @ nil_b @ ( cons_a @ Y2 @ Ys3 ) )
         => ( ! [X: b,Xs2: list_b,Y2: a,Ys3: list_a] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_180_list__induct2_H,axiom,
    ! [P: list_c > list_b > $o,Xs: list_c,Ys2: list_b] :
      ( ( P @ nil_c @ nil_b )
     => ( ! [X: c,Xs2: list_c] : ( P @ ( cons_c @ X @ Xs2 ) @ nil_b )
       => ( ! [Y2: b,Ys3: list_b] : ( P @ nil_c @ ( cons_b @ Y2 @ Ys3 ) )
         => ( ! [X: c,Xs2: list_c,Y2: b,Ys3: list_b] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_181_list__induct2_H,axiom,
    ! [P: list_c > list_c > $o,Xs: list_c,Ys2: list_c] :
      ( ( P @ nil_c @ nil_c )
     => ( ! [X: c,Xs2: list_c] : ( P @ ( cons_c @ X @ Xs2 ) @ nil_c )
       => ( ! [Y2: c,Ys3: list_c] : ( P @ nil_c @ ( cons_c @ Y2 @ Ys3 ) )
         => ( ! [X: c,Xs2: list_c,Y2: c,Ys3: list_c] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_182_list__induct2_H,axiom,
    ! [P: list_c > list_a > $o,Xs: list_c,Ys2: list_a] :
      ( ( P @ nil_c @ nil_a )
     => ( ! [X: c,Xs2: list_c] : ( P @ ( cons_c @ X @ Xs2 ) @ nil_a )
       => ( ! [Y2: a,Ys3: list_a] : ( P @ nil_c @ ( cons_a @ Y2 @ Ys3 ) )
         => ( ! [X: c,Xs2: list_c,Y2: a,Ys3: list_a] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_183_list__induct2_H,axiom,
    ! [P: list_a > list_b > $o,Xs: list_a,Ys2: list_b] :
      ( ( P @ nil_a @ nil_b )
     => ( ! [X: a,Xs2: list_a] : ( P @ ( cons_a @ X @ Xs2 ) @ nil_b )
       => ( ! [Y2: b,Ys3: list_b] : ( P @ nil_a @ ( cons_b @ Y2 @ Ys3 ) )
         => ( ! [X: a,Xs2: list_a,Y2: b,Ys3: list_b] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_184_list__induct2_H,axiom,
    ! [P: list_a > list_c > $o,Xs: list_a,Ys2: list_c] :
      ( ( P @ nil_a @ nil_c )
     => ( ! [X: a,Xs2: list_a] : ( P @ ( cons_a @ X @ Xs2 ) @ nil_c )
       => ( ! [Y2: c,Ys3: list_c] : ( P @ nil_a @ ( cons_c @ Y2 @ Ys3 ) )
         => ( ! [X: a,Xs2: list_a,Y2: c,Ys3: list_c] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_185_list__induct2_H,axiom,
    ! [P: list_a > list_a > $o,Xs: list_a,Ys2: list_a] :
      ( ( P @ nil_a @ nil_a )
     => ( ! [X: a,Xs2: list_a] : ( P @ ( cons_a @ X @ Xs2 ) @ nil_a )
       => ( ! [Y2: a,Ys3: list_a] : ( P @ nil_a @ ( cons_a @ Y2 @ Ys3 ) )
         => ( ! [X: a,Xs2: list_a,Y2: a,Ys3: list_a] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_186_list__induct2_H,axiom,
    ! [P: list_P903359562653991662od_b_c > list_b > $o,Xs: list_P903359562653991662od_b_c,Ys2: list_b] :
      ( ( P @ nil_Product_prod_b_c @ nil_b )
     => ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] : ( P @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ nil_b )
       => ( ! [Y2: b,Ys3: list_b] : ( P @ nil_Product_prod_b_c @ ( cons_b @ Y2 @ Ys3 ) )
         => ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Y2: b,Ys3: list_b] :
                ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) )
           => ( P @ Xs @ Ys2 ) ) ) ) ) ).

% list_induct2'
thf(fact_187_list__nonempty__induct,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: list_P7785822056432494700tion_a > $o] :
      ( ( Xs != nil_Pr596483954593762796tion_a )
     => ( ! [X: produc1359548802814378470tion_a] : ( P @ ( cons_P7206946803070396828tion_a @ X @ nil_Pr596483954593762796tion_a ) )
       => ( ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
              ( ( Xs2 != nil_Pr596483954593762796tion_a )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_188_list__nonempty__induct,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: list_P903359562653991662od_b_c > $o] :
      ( ( Xs != nil_Product_prod_b_c )
     => ( ! [X: product_prod_b_c] : ( P @ ( cons_P4529483553340347422od_b_c @ X @ nil_Product_prod_b_c ) )
       => ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
              ( ( Xs2 != nil_Product_prod_b_c )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_189_list__nonempty__induct,axiom,
    ! [Xs: list_b,P: list_b > $o] :
      ( ( Xs != nil_b )
     => ( ! [X: b] : ( P @ ( cons_b @ X @ nil_b ) )
       => ( ! [X: b,Xs2: list_b] :
              ( ( Xs2 != nil_b )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_b @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_190_list__nonempty__induct,axiom,
    ! [Xs: list_c,P: list_c > $o] :
      ( ( Xs != nil_c )
     => ( ! [X: c] : ( P @ ( cons_c @ X @ nil_c ) )
       => ( ! [X: c,Xs2: list_c] :
              ( ( Xs2 != nil_c )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_c @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_191_list__nonempty__induct,axiom,
    ! [Xs: list_a,P: list_a > $o] :
      ( ( Xs != nil_a )
     => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
       => ( ! [X: a,Xs2: list_a] :
              ( ( Xs2 != nil_a )
             => ( ( P @ Xs2 )
               => ( P @ ( cons_a @ X @ Xs2 ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% list_nonempty_induct
thf(fact_192_splice_Ocases,axiom,
    ! [X3: produc5245323578580934439tion_a] :
      ( ! [Ys3: list_P7785822056432494700tion_a] :
          ( X3
         != ( produc3719507787779299095tion_a @ nil_Pr596483954593762796tion_a @ Ys3 ) )
     => ~ ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a,Ys3: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc3719507787779299095tion_a @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) @ Ys3 ) ) ) ).

% splice.cases
thf(fact_193_splice_Ocases,axiom,
    ! [X3: produc5878855887281848999od_b_c] :
      ( ! [Ys3: list_P903359562653991662od_b_c] :
          ( X3
         != ( produc3076307724246486423od_b_c @ nil_Product_prod_b_c @ Ys3 ) )
     => ~ ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Ys3: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc3076307724246486423od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ Ys3 ) ) ) ).

% splice.cases
thf(fact_194_splice_Ocases,axiom,
    ! [X3: produc3963297410138542439list_b] :
      ( ! [Ys3: list_b] :
          ( X3
         != ( produc1564554178308465111list_b @ nil_b @ Ys3 ) )
     => ~ ! [X: b,Xs2: list_b,Ys3: list_b] :
            ( X3
           != ( produc1564554178308465111list_b @ ( cons_b @ X @ Xs2 ) @ Ys3 ) ) ) ).

% splice.cases
thf(fact_195_splice_Ocases,axiom,
    ! [X3: produc7985223085803476903list_c] :
      ( ! [Ys3: list_c] :
          ( X3
         != ( produc5515445818230282391list_c @ nil_c @ Ys3 ) )
     => ~ ! [X: c,Xs2: list_c,Ys3: list_c] :
            ( X3
           != ( produc5515445818230282391list_c @ ( cons_c @ X @ Xs2 ) @ Ys3 ) ) ) ).

% splice.cases
thf(fact_196_splice_Ocases,axiom,
    ! [X3: produc9164743771328383783list_a] :
      ( ! [Ys3: list_a] :
          ( X3
         != ( produc6837034575241423639list_a @ nil_a @ Ys3 ) )
     => ~ ! [X: a,Xs2: list_a,Ys3: list_a] :
            ( X3
           != ( produc6837034575241423639list_a @ ( cons_a @ X @ Xs2 ) @ Ys3 ) ) ) ).

% splice.cases
thf(fact_197_shuffles_Ocases,axiom,
    ! [X3: produc5245323578580934439tion_a] :
      ( ! [Ys3: list_P7785822056432494700tion_a] :
          ( X3
         != ( produc3719507787779299095tion_a @ nil_Pr596483954593762796tion_a @ Ys3 ) )
     => ( ! [Xs2: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc3719507787779299095tion_a @ Xs2 @ nil_Pr596483954593762796tion_a ) )
       => ~ ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a,Y2: produc1359548802814378470tion_a,Ys3: list_P7785822056432494700tion_a] :
              ( X3
             != ( produc3719507787779299095tion_a @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) @ ( cons_P7206946803070396828tion_a @ Y2 @ Ys3 ) ) ) ) ) ).

% shuffles.cases
thf(fact_198_shuffles_Ocases,axiom,
    ! [X3: produc5878855887281848999od_b_c] :
      ( ! [Ys3: list_P903359562653991662od_b_c] :
          ( X3
         != ( produc3076307724246486423od_b_c @ nil_Product_prod_b_c @ Ys3 ) )
     => ( ! [Xs2: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc3076307724246486423od_b_c @ Xs2 @ nil_Product_prod_b_c ) )
       => ~ ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Y2: product_prod_b_c,Ys3: list_P903359562653991662od_b_c] :
              ( X3
             != ( produc3076307724246486423od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ ( cons_P4529483553340347422od_b_c @ Y2 @ Ys3 ) ) ) ) ) ).

% shuffles.cases
thf(fact_199_shuffles_Ocases,axiom,
    ! [X3: produc3963297410138542439list_b] :
      ( ! [Ys3: list_b] :
          ( X3
         != ( produc1564554178308465111list_b @ nil_b @ Ys3 ) )
     => ( ! [Xs2: list_b] :
            ( X3
           != ( produc1564554178308465111list_b @ Xs2 @ nil_b ) )
       => ~ ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b] :
              ( X3
             != ( produc1564554178308465111list_b @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) ) ) ) ).

% shuffles.cases
thf(fact_200_shuffles_Ocases,axiom,
    ! [X3: produc7985223085803476903list_c] :
      ( ! [Ys3: list_c] :
          ( X3
         != ( produc5515445818230282391list_c @ nil_c @ Ys3 ) )
     => ( ! [Xs2: list_c] :
            ( X3
           != ( produc5515445818230282391list_c @ Xs2 @ nil_c ) )
       => ~ ! [X: c,Xs2: list_c,Y2: c,Ys3: list_c] :
              ( X3
             != ( produc5515445818230282391list_c @ ( cons_c @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) ) ) ) ).

% shuffles.cases
thf(fact_201_shuffles_Ocases,axiom,
    ! [X3: produc9164743771328383783list_a] :
      ( ! [Ys3: list_a] :
          ( X3
         != ( produc6837034575241423639list_a @ nil_a @ Ys3 ) )
     => ( ! [Xs2: list_a] :
            ( X3
           != ( produc6837034575241423639list_a @ Xs2 @ nil_a ) )
       => ~ ! [X: a,Xs2: list_a,Y2: a,Ys3: list_a] :
              ( X3
             != ( produc6837034575241423639list_a @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) ) ) ) ).

% shuffles.cases
thf(fact_202_is__prefix_Ocases,axiom,
    ! [X3: produc5245323578580934439tion_a] :
      ( ! [Uu2: list_P7785822056432494700tion_a] :
          ( X3
         != ( produc3719507787779299095tion_a @ nil_Pr596483954593762796tion_a @ Uu2 ) )
     => ( ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc3719507787779299095tion_a @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) @ nil_Pr596483954593762796tion_a ) )
       => ~ ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a,Y2: produc1359548802814378470tion_a,Ys3: list_P7785822056432494700tion_a] :
              ( X3
             != ( produc3719507787779299095tion_a @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) @ ( cons_P7206946803070396828tion_a @ Y2 @ Ys3 ) ) ) ) ) ).

% is_prefix.cases
thf(fact_203_is__prefix_Ocases,axiom,
    ! [X3: produc5878855887281848999od_b_c] :
      ( ! [Uu2: list_P903359562653991662od_b_c] :
          ( X3
         != ( produc3076307724246486423od_b_c @ nil_Product_prod_b_c @ Uu2 ) )
     => ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc3076307724246486423od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ nil_Product_prod_b_c ) )
       => ~ ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Y2: product_prod_b_c,Ys3: list_P903359562653991662od_b_c] :
              ( X3
             != ( produc3076307724246486423od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ ( cons_P4529483553340347422od_b_c @ Y2 @ Ys3 ) ) ) ) ) ).

% is_prefix.cases
thf(fact_204_is__prefix_Ocases,axiom,
    ! [X3: produc3963297410138542439list_b] :
      ( ! [Uu2: list_b] :
          ( X3
         != ( produc1564554178308465111list_b @ nil_b @ Uu2 ) )
     => ( ! [X: b,Xs2: list_b] :
            ( X3
           != ( produc1564554178308465111list_b @ ( cons_b @ X @ Xs2 ) @ nil_b ) )
       => ~ ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b] :
              ( X3
             != ( produc1564554178308465111list_b @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) ) ) ) ).

% is_prefix.cases
thf(fact_205_is__prefix_Ocases,axiom,
    ! [X3: produc7985223085803476903list_c] :
      ( ! [Uu2: list_c] :
          ( X3
         != ( produc5515445818230282391list_c @ nil_c @ Uu2 ) )
     => ( ! [X: c,Xs2: list_c] :
            ( X3
           != ( produc5515445818230282391list_c @ ( cons_c @ X @ Xs2 ) @ nil_c ) )
       => ~ ! [X: c,Xs2: list_c,Y2: c,Ys3: list_c] :
              ( X3
             != ( produc5515445818230282391list_c @ ( cons_c @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) ) ) ) ).

% is_prefix.cases
thf(fact_206_is__prefix_Ocases,axiom,
    ! [X3: produc9164743771328383783list_a] :
      ( ! [Uu2: list_a] :
          ( X3
         != ( produc6837034575241423639list_a @ nil_a @ Uu2 ) )
     => ( ! [X: a,Xs2: list_a] :
            ( X3
           != ( produc6837034575241423639list_a @ ( cons_a @ X @ Xs2 ) @ nil_a ) )
       => ~ ! [X: a,Xs2: list_a,Y2: a,Ys3: list_a] :
              ( X3
             != ( produc6837034575241423639list_a @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) ) ) ) ).

% is_prefix.cases
thf(fact_207_sorted__wrt_Ocases,axiom,
    ! [X3: produc2887264429716469285tion_a] :
      ( ! [P5: produc1359548802814378470tion_a > produc1359548802814378470tion_a > $o] :
          ( X3
         != ( produc6732093043127223957tion_a @ P5 @ nil_Pr596483954593762796tion_a ) )
     => ~ ! [P5: produc1359548802814378470tion_a > produc1359548802814378470tion_a > $o,X: produc1359548802814378470tion_a,Ys3: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc6732093043127223957tion_a @ P5 @ ( cons_P7206946803070396828tion_a @ X @ Ys3 ) ) ) ) ).

% sorted_wrt.cases
thf(fact_208_sorted__wrt_Ocases,axiom,
    ! [X3: produc2416979464461413415od_b_c] :
      ( ! [P5: product_prod_b_c > product_prod_b_c > $o] :
          ( X3
         != ( produc6092892548594537111od_b_c @ P5 @ nil_Product_prod_b_c ) )
     => ~ ! [P5: product_prod_b_c > product_prod_b_c > $o,X: product_prod_b_c,Ys3: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc6092892548594537111od_b_c @ P5 @ ( cons_P4529483553340347422od_b_c @ X @ Ys3 ) ) ) ) ).

% sorted_wrt.cases
thf(fact_209_sorted__wrt_Ocases,axiom,
    ! [X3: produc5185152304234826110list_b] :
      ( ! [P5: b > b > $o] :
          ( X3
         != ( produc8193136575784045678list_b @ P5 @ nil_b ) )
     => ~ ! [P5: b > b > $o,X: b,Ys3: list_b] :
            ( X3
           != ( produc8193136575784045678list_b @ P5 @ ( cons_b @ X @ Ys3 ) ) ) ) ).

% sorted_wrt.cases
thf(fact_210_sorted__wrt_Ocases,axiom,
    ! [X3: produc5337753222811372479list_c] :
      ( ! [P5: c > c > $o] :
          ( X3
         != ( produc8274703458617474863list_c @ P5 @ nil_c ) )
     => ~ ! [P5: c > c > $o,X: c,Ys3: list_c] :
            ( X3
           != ( produc8274703458617474863list_c @ P5 @ ( cons_c @ X @ Ys3 ) ) ) ) ).

% sorted_wrt.cases
thf(fact_211_sorted__wrt_Ocases,axiom,
    ! [X3: produc5032551385658279741list_a] :
      ( ! [P5: a > a > $o] :
          ( X3
         != ( produc8111569692950616493list_a @ P5 @ nil_a ) )
     => ~ ! [P5: a > a > $o,X: a,Ys3: list_a] :
            ( X3
           != ( produc8111569692950616493list_a @ P5 @ ( cons_a @ X @ Ys3 ) ) ) ) ).

% sorted_wrt.cases
thf(fact_212_successively_Ocases,axiom,
    ! [X3: produc2887264429716469285tion_a] :
      ( ! [P5: produc1359548802814378470tion_a > produc1359548802814378470tion_a > $o] :
          ( X3
         != ( produc6732093043127223957tion_a @ P5 @ nil_Pr596483954593762796tion_a ) )
     => ( ! [P5: produc1359548802814378470tion_a > produc1359548802814378470tion_a > $o,X: produc1359548802814378470tion_a] :
            ( X3
           != ( produc6732093043127223957tion_a @ P5 @ ( cons_P7206946803070396828tion_a @ X @ nil_Pr596483954593762796tion_a ) ) )
       => ~ ! [P5: produc1359548802814378470tion_a > produc1359548802814378470tion_a > $o,X: produc1359548802814378470tion_a,Y2: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
              ( X3
             != ( produc6732093043127223957tion_a @ P5 @ ( cons_P7206946803070396828tion_a @ X @ ( cons_P7206946803070396828tion_a @ Y2 @ Xs2 ) ) ) ) ) ) ).

% successively.cases
thf(fact_213_successively_Ocases,axiom,
    ! [X3: produc2416979464461413415od_b_c] :
      ( ! [P5: product_prod_b_c > product_prod_b_c > $o] :
          ( X3
         != ( produc6092892548594537111od_b_c @ P5 @ nil_Product_prod_b_c ) )
     => ( ! [P5: product_prod_b_c > product_prod_b_c > $o,X: product_prod_b_c] :
            ( X3
           != ( produc6092892548594537111od_b_c @ P5 @ ( cons_P4529483553340347422od_b_c @ X @ nil_Product_prod_b_c ) ) )
       => ~ ! [P5: product_prod_b_c > product_prod_b_c > $o,X: product_prod_b_c,Y2: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
              ( X3
             != ( produc6092892548594537111od_b_c @ P5 @ ( cons_P4529483553340347422od_b_c @ X @ ( cons_P4529483553340347422od_b_c @ Y2 @ Xs2 ) ) ) ) ) ) ).

% successively.cases
thf(fact_214_successively_Ocases,axiom,
    ! [X3: produc5185152304234826110list_b] :
      ( ! [P5: b > b > $o] :
          ( X3
         != ( produc8193136575784045678list_b @ P5 @ nil_b ) )
     => ( ! [P5: b > b > $o,X: b] :
            ( X3
           != ( produc8193136575784045678list_b @ P5 @ ( cons_b @ X @ nil_b ) ) )
       => ~ ! [P5: b > b > $o,X: b,Y2: b,Xs2: list_b] :
              ( X3
             != ( produc8193136575784045678list_b @ P5 @ ( cons_b @ X @ ( cons_b @ Y2 @ Xs2 ) ) ) ) ) ) ).

% successively.cases
thf(fact_215_successively_Ocases,axiom,
    ! [X3: produc5337753222811372479list_c] :
      ( ! [P5: c > c > $o] :
          ( X3
         != ( produc8274703458617474863list_c @ P5 @ nil_c ) )
     => ( ! [P5: c > c > $o,X: c] :
            ( X3
           != ( produc8274703458617474863list_c @ P5 @ ( cons_c @ X @ nil_c ) ) )
       => ~ ! [P5: c > c > $o,X: c,Y2: c,Xs2: list_c] :
              ( X3
             != ( produc8274703458617474863list_c @ P5 @ ( cons_c @ X @ ( cons_c @ Y2 @ Xs2 ) ) ) ) ) ) ).

% successively.cases
thf(fact_216_successively_Ocases,axiom,
    ! [X3: produc5032551385658279741list_a] :
      ( ! [P5: a > a > $o] :
          ( X3
         != ( produc8111569692950616493list_a @ P5 @ nil_a ) )
     => ( ! [P5: a > a > $o,X: a] :
            ( X3
           != ( produc8111569692950616493list_a @ P5 @ ( cons_a @ X @ nil_a ) ) )
       => ~ ! [P5: a > a > $o,X: a,Y2: a,Xs2: list_a] :
              ( X3
             != ( produc8111569692950616493list_a @ P5 @ ( cons_a @ X @ ( cons_a @ Y2 @ Xs2 ) ) ) ) ) ) ).

% successively.cases
thf(fact_217_find__index_Ocases,axiom,
    ! [X3: produc7482660301195889802tion_a] :
      ( ! [F2: produc1359548802814378470tion_a > $o] :
          ( X3
         != ( produc1028200367394081980tion_a @ F2 @ nil_Pr596483954593762796tion_a ) )
     => ~ ! [F2: produc1359548802814378470tion_a > $o,X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc1028200367394081980tion_a @ F2 @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) ) ) ) ).

% find_index.cases
thf(fact_218_find__index_Ocases,axiom,
    ! [X3: produc7816210539016439438od_b_c] :
      ( ! [F2: product_prod_b_c > $o] :
          ( X3
         != ( produc7392021306980666816od_b_c @ F2 @ nil_Product_prod_b_c ) )
     => ~ ! [F2: product_prod_b_c > $o,X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc7392021306980666816od_b_c @ F2 @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) ) ) ) ).

% find_index.cases
thf(fact_219_find__index_Ocases,axiom,
    ! [X3: produc8914622519208346940list_b] :
      ( ! [F2: b > $o] :
          ( X3
         != ( produc6309431049009149422list_b @ F2 @ nil_b ) )
     => ~ ! [F2: b > $o,X: b,Xs2: list_b] :
            ( X3
           != ( produc6309431049009149422list_b @ F2 @ ( cons_b @ X @ Xs2 ) ) ) ) ).

% find_index.cases
thf(fact_220_find__index_Ocases,axiom,
    ! [X3: produc1038177369770814398list_c] :
      ( ! [F2: c > $o] :
          ( X3
         != ( produc7585323900683275504list_c @ F2 @ nil_c ) )
     => ~ ! [F2: c > $o,X: c,Xs2: list_c] :
            ( X3
           != ( produc7585323900683275504list_c @ F2 @ ( cons_c @ X @ Xs2 ) ) ) ) ).

% find_index.cases
thf(fact_221_find__index_Ocases,axiom,
    ! [X3: produc7567695631791103674list_a] :
      ( ! [F2: a > $o] :
          ( X3
         != ( produc5033538197335023340list_a @ F2 @ nil_a ) )
     => ~ ! [F2: a > $o,X: a,Xs2: list_a] :
            ( X3
           != ( produc5033538197335023340list_a @ F2 @ ( cons_a @ X @ Xs2 ) ) ) ) ).

% find_index.cases
thf(fact_222_find__remove_H_Ocases,axiom,
    ! [X3: produc7046815421957522245tion_a] :
      ( ! [P5: produc1359548802814378470tion_a > $o,Uu2: list_P7785822056432494700tion_a] :
          ( X3
         != ( produc8746878813851937655tion_a @ P5 @ ( produc3719507787779299095tion_a @ nil_Pr596483954593762796tion_a @ Uu2 ) ) )
     => ~ ! [P5: produc1359548802814378470tion_a > $o,X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a,Prev: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc8746878813851937655tion_a @ P5 @ ( produc3719507787779299095tion_a @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) @ Prev ) ) ) ) ).

% find_remove'.cases
thf(fact_223_find__remove_H_Ocases,axiom,
    ! [X3: produc5559707038353031495od_b_c] :
      ( ! [P5: product_prod_b_c > $o,Uu2: list_P903359562653991662od_b_c] :
          ( X3
         != ( produc1005531610559690873od_b_c @ P5 @ ( produc3076307724246486423od_b_c @ nil_Product_prod_b_c @ Uu2 ) ) )
     => ~ ! [P5: product_prod_b_c > $o,X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Prev: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc1005531610559690873od_b_c @ P5 @ ( produc3076307724246486423od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ Prev ) ) ) ) ).

% find_remove'.cases
thf(fact_224_find__remove_H_Ocases,axiom,
    ! [X3: produc4714985347897971870list_b] :
      ( ! [P5: b > $o,Uu2: list_b] :
          ( X3
         != ( produc1341956810442481360list_b @ P5 @ ( produc1564554178308465111list_b @ nil_b @ Uu2 ) ) )
     => ~ ! [P5: b > $o,X: b,Xs2: list_b,Prev: list_b] :
            ( X3
           != ( produc1341956810442481360list_b @ P5 @ ( produc1564554178308465111list_b @ ( cons_b @ X @ Xs2 ) @ Prev ) ) ) ) ).

% find_remove'.cases
thf(fact_225_find__remove_H_Ocases,axiom,
    ! [X3: produc6143555577579660511list_c] :
      ( ! [P5: c > $o,Uu2: list_c] :
          ( X3
         != ( produc3176021439213358865list_c @ P5 @ ( produc5515445818230282391list_c @ nil_c @ Uu2 ) ) )
     => ~ ! [P5: c > $o,X: c,Xs2: list_c,Prev: list_c] :
            ( X3
           != ( produc3176021439213358865list_c @ P5 @ ( produc5515445818230282391list_c @ ( cons_c @ X @ Xs2 ) @ Prev ) ) ) ) ).

% find_remove'.cases
thf(fact_226_find__remove_H_Ocases,axiom,
    ! [X3: produc3286415118216283229list_a] :
      ( ! [P5: a > $o,Uu2: list_a] :
          ( X3
         != ( produc8731264218526379663list_a @ P5 @ ( produc6837034575241423639list_a @ nil_a @ Uu2 ) ) )
     => ~ ! [P5: a > $o,X: a,Xs2: list_a,Prev: list_a] :
            ( X3
           != ( produc8731264218526379663list_a @ P5 @ ( produc6837034575241423639list_a @ ( cons_a @ X @ Xs2 ) @ Prev ) ) ) ) ).

% find_remove'.cases
thf(fact_227_set__ConsD,axiom,
    ! [Y: produc1359548802814378470tion_a,X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ Y @ ( set_Pr150857188848084347tion_a @ ( cons_P7206946803070396828tion_a @ X3 @ Xs ) ) )
     => ( ( Y = X3 )
        | ( member5139186223151194895tion_a @ Y @ ( set_Pr150857188848084347tion_a @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_228_set__ConsD,axiom,
    ! [Y: product_prod_b_c,X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ ( cons_P4529483553340347422od_b_c @ X3 @ Xs ) ) )
     => ( ( Y = X3 )
        | ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_229_set__ConsD,axiom,
    ! [Y: b,X3: b,Xs: list_b] :
      ( ( member_b @ Y @ ( set_b2 @ ( cons_b @ X3 @ Xs ) ) )
     => ( ( Y = X3 )
        | ( member_b @ Y @ ( set_b2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_230_set__ConsD,axiom,
    ! [Y: c,X3: c,Xs: list_c] :
      ( ( member_c @ Y @ ( set_c2 @ ( cons_c @ X3 @ Xs ) ) )
     => ( ( Y = X3 )
        | ( member_c @ Y @ ( set_c2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_231_set__ConsD,axiom,
    ! [Y: a,X3: a,Xs: list_a] :
      ( ( member_a @ Y @ ( set_a2 @ ( cons_a @ X3 @ Xs ) ) )
     => ( ( Y = X3 )
        | ( member_a @ Y @ ( set_a2 @ Xs ) ) ) ) ).

% set_ConsD
thf(fact_232_list_Oset__cases,axiom,
    ! [E: produc1359548802814378470tion_a,A: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ E @ ( set_Pr150857188848084347tion_a @ A ) )
     => ( ! [Z2: list_P7785822056432494700tion_a] :
            ( A
           != ( cons_P7206946803070396828tion_a @ E @ Z2 ) )
       => ~ ! [Z1: produc1359548802814378470tion_a,Z2: list_P7785822056432494700tion_a] :
              ( ( A
                = ( cons_P7206946803070396828tion_a @ Z1 @ Z2 ) )
             => ~ ( member5139186223151194895tion_a @ E @ ( set_Pr150857188848084347tion_a @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_233_list_Oset__cases,axiom,
    ! [E: product_prod_b_c,A: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ E @ ( set_Product_prod_b_c2 @ A ) )
     => ( ! [Z2: list_P903359562653991662od_b_c] :
            ( A
           != ( cons_P4529483553340347422od_b_c @ E @ Z2 ) )
       => ~ ! [Z1: product_prod_b_c,Z2: list_P903359562653991662od_b_c] :
              ( ( A
                = ( cons_P4529483553340347422od_b_c @ Z1 @ Z2 ) )
             => ~ ( member7862447941013992593od_b_c @ E @ ( set_Product_prod_b_c2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_234_list_Oset__cases,axiom,
    ! [E: b,A: list_b] :
      ( ( member_b @ E @ ( set_b2 @ A ) )
     => ( ! [Z2: list_b] :
            ( A
           != ( cons_b @ E @ Z2 ) )
       => ~ ! [Z1: b,Z2: list_b] :
              ( ( A
                = ( cons_b @ Z1 @ Z2 ) )
             => ~ ( member_b @ E @ ( set_b2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_235_list_Oset__cases,axiom,
    ! [E: c,A: list_c] :
      ( ( member_c @ E @ ( set_c2 @ A ) )
     => ( ! [Z2: list_c] :
            ( A
           != ( cons_c @ E @ Z2 ) )
       => ~ ! [Z1: c,Z2: list_c] :
              ( ( A
                = ( cons_c @ Z1 @ Z2 ) )
             => ~ ( member_c @ E @ ( set_c2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_236_list_Oset__cases,axiom,
    ! [E: a,A: list_a] :
      ( ( member_a @ E @ ( set_a2 @ A ) )
     => ( ! [Z2: list_a] :
            ( A
           != ( cons_a @ E @ Z2 ) )
       => ~ ! [Z1: a,Z2: list_a] :
              ( ( A
                = ( cons_a @ Z1 @ Z2 ) )
             => ~ ( member_a @ E @ ( set_a2 @ Z2 ) ) ) ) ) ).

% list.set_cases
thf(fact_237_list_Oset__intros_I1_J,axiom,
    ! [X21: produc1359548802814378470tion_a,X222: list_P7785822056432494700tion_a] : ( member5139186223151194895tion_a @ X21 @ ( set_Pr150857188848084347tion_a @ ( cons_P7206946803070396828tion_a @ X21 @ X222 ) ) ) ).

% list.set_intros(1)
thf(fact_238_list_Oset__intros_I1_J,axiom,
    ! [X21: product_prod_b_c,X222: list_P903359562653991662od_b_c] : ( member7862447941013992593od_b_c @ X21 @ ( set_Product_prod_b_c2 @ ( cons_P4529483553340347422od_b_c @ X21 @ X222 ) ) ) ).

% list.set_intros(1)
thf(fact_239_list_Oset__intros_I1_J,axiom,
    ! [X21: b,X222: list_b] : ( member_b @ X21 @ ( set_b2 @ ( cons_b @ X21 @ X222 ) ) ) ).

% list.set_intros(1)
thf(fact_240_list_Oset__intros_I1_J,axiom,
    ! [X21: c,X222: list_c] : ( member_c @ X21 @ ( set_c2 @ ( cons_c @ X21 @ X222 ) ) ) ).

% list.set_intros(1)
thf(fact_241_list_Oset__intros_I1_J,axiom,
    ! [X21: a,X222: list_a] : ( member_a @ X21 @ ( set_a2 @ ( cons_a @ X21 @ X222 ) ) ) ).

% list.set_intros(1)
thf(fact_242_list_Oset__intros_I2_J,axiom,
    ! [Y: produc1359548802814378470tion_a,X222: list_P7785822056432494700tion_a,X21: produc1359548802814378470tion_a] :
      ( ( member5139186223151194895tion_a @ Y @ ( set_Pr150857188848084347tion_a @ X222 ) )
     => ( member5139186223151194895tion_a @ Y @ ( set_Pr150857188848084347tion_a @ ( cons_P7206946803070396828tion_a @ X21 @ X222 ) ) ) ) ).

% list.set_intros(2)
thf(fact_243_list_Oset__intros_I2_J,axiom,
    ! [Y: product_prod_b_c,X222: list_P903359562653991662od_b_c,X21: product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ X222 ) )
     => ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ ( cons_P4529483553340347422od_b_c @ X21 @ X222 ) ) ) ) ).

% list.set_intros(2)
thf(fact_244_list_Oset__intros_I2_J,axiom,
    ! [Y: b,X222: list_b,X21: b] :
      ( ( member_b @ Y @ ( set_b2 @ X222 ) )
     => ( member_b @ Y @ ( set_b2 @ ( cons_b @ X21 @ X222 ) ) ) ) ).

% list.set_intros(2)
thf(fact_245_list_Oset__intros_I2_J,axiom,
    ! [Y: c,X222: list_c,X21: c] :
      ( ( member_c @ Y @ ( set_c2 @ X222 ) )
     => ( member_c @ Y @ ( set_c2 @ ( cons_c @ X21 @ X222 ) ) ) ) ).

% list.set_intros(2)
thf(fact_246_list_Oset__intros_I2_J,axiom,
    ! [Y: a,X222: list_a,X21: a] :
      ( ( member_a @ Y @ ( set_a2 @ X222 ) )
     => ( member_a @ Y @ ( set_a2 @ ( cons_a @ X21 @ X222 ) ) ) ) ).

% list.set_intros(2)
thf(fact_247_list_Osel_I1_J,axiom,
    ! [X21: produc1359548802814378470tion_a,X222: list_P7785822056432494700tion_a] :
      ( ( hd_Pro2241809909539833041tion_a @ ( cons_P7206946803070396828tion_a @ X21 @ X222 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_248_list_Osel_I1_J,axiom,
    ! [X21: product_prod_b_c,X222: list_P903359562653991662od_b_c] :
      ( ( hd_Product_prod_b_c @ ( cons_P4529483553340347422od_b_c @ X21 @ X222 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_249_list_Osel_I1_J,axiom,
    ! [X21: b,X222: list_b] :
      ( ( hd_b @ ( cons_b @ X21 @ X222 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_250_list_Osel_I1_J,axiom,
    ! [X21: c,X222: list_c] :
      ( ( hd_c @ ( cons_c @ X21 @ X222 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_251_list_Osel_I1_J,axiom,
    ! [X21: a,X222: list_a] :
      ( ( hd_a @ ( cons_a @ X21 @ X222 ) )
      = X21 ) ).

% list.sel(1)
thf(fact_252_observable__alt__def,axiom,
    ( observable_a_b_c
    = ( ^ [M3: fsm_a_b_c] :
        ! [Q13: a,X5: b,Y3: c,Q14: a,Q15: a] :
          ( ( ( member5502040268208861279od_c_a @ ( produc5762801557034676134od_c_a @ Q13 @ ( produc3440865914000881661od_c_a @ X5 @ ( product_Pair_c_a @ Y3 @ Q14 ) ) ) @ ( transitions_a_b_c @ M3 ) )
            & ( member5502040268208861279od_c_a @ ( produc5762801557034676134od_c_a @ Q13 @ ( produc3440865914000881661od_c_a @ X5 @ ( product_Pair_c_a @ Y3 @ Q15 ) ) ) @ ( transitions_a_b_c @ M3 ) ) )
         => ( Q14 = Q15 ) ) ) ) ).

% observable_alt_def
thf(fact_253_observable__alt__def,axiom,
    ( observ1716698870131812264tion_a
    = ( ^ [M3: fsm_op7083421644242023300tion_a] :
        ! [Q13: option_a,X5: product_prod_b_c,Y3: option_a,Q14: option_a,Q15: option_a] :
          ( ( ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q13 @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q14 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) )
            & ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q13 @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q15 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) ) )
         => ( Q14 = Q15 ) ) ) ) ).

% observable_alt_def
thf(fact_254_non__sym__dist__pairs__elems__distinct_I3_J,axiom,
    ! [X3: option_a,Y: option_a,Xs: list_option_a] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) )
     => ( X3 != Y ) ) ).

% non_sym_dist_pairs_elems_distinct(3)
thf(fact_255_non__sym__dist__pairs__elems__non__refl,axiom,
    ! [X3: option_a,Y: option_a,Xs: list_option_a] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) )
     => ~ ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ Y @ X3 ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) ) ) ).

% non_sym_dist_pairs_elems_non_refl
thf(fact_256_list__ordered__pairs_Osimps_I1_J,axiom,
    ( ( list_o3332032289628391213tion_a @ nil_Pr596483954593762796tion_a )
    = nil_Pr6560348071176174381tion_a ) ).

% list_ordered_pairs.simps(1)
thf(fact_257_list__ordered__pairs_Osimps_I1_J,axiom,
    ( ( list_o804723041229831855od_b_c @ nil_Product_prod_b_c )
    = nil_Pr2945457328363356077od_b_c ) ).

% list_ordered_pairs.simps(1)
thf(fact_258_list__ordered__pairs_Osimps_I1_J,axiom,
    ( ( list_ordered_pairs_b @ nil_b )
    = nil_Product_prod_b_b ) ).

% list_ordered_pairs.simps(1)
thf(fact_259_list__ordered__pairs_Osimps_I1_J,axiom,
    ( ( list_ordered_pairs_c @ nil_c )
    = nil_Product_prod_c_c ) ).

% list_ordered_pairs.simps(1)
thf(fact_260_list__ordered__pairs_Osimps_I1_J,axiom,
    ( ( list_ordered_pairs_a @ nil_a )
    = nil_Product_prod_a_a ) ).

% list_ordered_pairs.simps(1)
thf(fact_261_non__sym__dist__pairs__set__iff,axiom,
    ! [X3: produc1359548802814378470tion_a,Y: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member1364567196453864272tion_a @ ( produc6894522847932232471tion_a @ X3 @ Y ) @ ( set_Pr3522298340653576636tion_a @ ( non_sy8571533894597929818tion_a @ Xs ) ) )
      = ( ( X3 != Y )
        & ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
        & ( member5139186223151194895tion_a @ Y @ ( set_Pr150857188848084347tion_a @ Xs ) )
        & ~ ( member1364567196453864272tion_a @ ( produc6894522847932232471tion_a @ Y @ X3 ) @ ( set_Pr3522298340653576636tion_a @ ( non_sy8571533894597929818tion_a @ Xs ) ) ) ) ) ).

% non_sym_dist_pairs_set_iff
thf(fact_262_non__sym__dist__pairs__set__iff,axiom,
    ! [X3: product_prod_b_c,Y: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7104721839413753296od_b_c @ ( produc6366901981060558487od_b_c @ X3 @ Y ) @ ( set_Pr7267323205303737404od_b_c @ ( non_sy6082845619963730908od_b_c @ Xs ) ) )
      = ( ( X3 != Y )
        & ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
        & ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ Xs ) )
        & ~ ( member7104721839413753296od_b_c @ ( produc6366901981060558487od_b_c @ Y @ X3 ) @ ( set_Pr7267323205303737404od_b_c @ ( non_sy6082845619963730908od_b_c @ Xs ) ) ) ) ) ).

% non_sym_dist_pairs_set_iff
thf(fact_263_non__sym__dist__pairs__set__iff,axiom,
    ! [X3: b,Y: b,Xs: list_b] :
      ( ( member7862447936710763792od_b_b @ ( product_Pair_b_b @ X3 @ Y ) @ ( set_Product_prod_b_b2 @ ( non_sym_dist_pairs_b @ Xs ) ) )
      = ( ( X3 != Y )
        & ( member_b @ X3 @ ( set_b2 @ Xs ) )
        & ( member_b @ Y @ ( set_b2 @ Xs ) )
        & ~ ( member7862447936710763792od_b_b @ ( product_Pair_b_b @ Y @ X3 ) @ ( set_Product_prod_b_b2 @ ( non_sym_dist_pairs_b @ Xs ) ) ) ) ) ).

% non_sym_dist_pairs_set_iff
thf(fact_264_non__sym__dist__pairs__set__iff,axiom,
    ! [X3: c,Y: c,Xs: list_c] :
      ( ( member5074992359041316560od_c_c @ ( product_Pair_c_c @ X3 @ Y ) @ ( set_Product_prod_c_c2 @ ( non_sym_dist_pairs_c @ Xs ) ) )
      = ( ( X3 != Y )
        & ( member_c @ X3 @ ( set_c2 @ Xs ) )
        & ( member_c @ Y @ ( set_c2 @ Xs ) )
        & ~ ( member5074992359041316560od_c_c @ ( product_Pair_c_c @ Y @ X3 ) @ ( set_Product_prod_c_c2 @ ( non_sym_dist_pairs_c @ Xs ) ) ) ) ) ).

% non_sym_dist_pairs_set_iff
thf(fact_265_non__sym__dist__pairs__set__iff,axiom,
    ! [X3: a,Y: a,Xs: list_a] :
      ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ X3 @ Y ) @ ( set_Product_prod_a_a2 @ ( non_sym_dist_pairs_a @ Xs ) ) )
      = ( ( X3 != Y )
        & ( member_a @ X3 @ ( set_a2 @ Xs ) )
        & ( member_a @ Y @ ( set_a2 @ Xs ) )
        & ~ ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ Y @ X3 ) @ ( set_Product_prod_a_a2 @ ( non_sym_dist_pairs_a @ Xs ) ) ) ) ) ).

% non_sym_dist_pairs_set_iff
thf(fact_266_non__sym__dist__pairs__set__iff,axiom,
    ! [X3: option_a,Y: option_a,Xs: list_option_a] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) )
      = ( ( X3 != Y )
        & ( member_option_a @ X3 @ ( set_option_a2 @ Xs ) )
        & ( member_option_a @ Y @ ( set_option_a2 @ Xs ) )
        & ~ ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ Y @ X3 ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) ) ) ) ).

% non_sym_dist_pairs_set_iff
thf(fact_267_non__sym__dist__pairs__elems,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a,Y: produc1359548802814378470tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
     => ( ( member5139186223151194895tion_a @ Y @ ( set_Pr150857188848084347tion_a @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member1364567196453864272tion_a @ ( produc6894522847932232471tion_a @ X3 @ Y ) @ ( set_Pr3522298340653576636tion_a @ ( non_sy8571533894597929818tion_a @ Xs ) ) )
            | ( member1364567196453864272tion_a @ ( produc6894522847932232471tion_a @ Y @ X3 ) @ ( set_Pr3522298340653576636tion_a @ ( non_sy8571533894597929818tion_a @ Xs ) ) ) ) ) ) ) ).

% non_sym_dist_pairs_elems
thf(fact_268_non__sym__dist__pairs__elems,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c,Y: product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
     => ( ( member7862447941013992593od_b_c @ Y @ ( set_Product_prod_b_c2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member7104721839413753296od_b_c @ ( produc6366901981060558487od_b_c @ X3 @ Y ) @ ( set_Pr7267323205303737404od_b_c @ ( non_sy6082845619963730908od_b_c @ Xs ) ) )
            | ( member7104721839413753296od_b_c @ ( produc6366901981060558487od_b_c @ Y @ X3 ) @ ( set_Pr7267323205303737404od_b_c @ ( non_sy6082845619963730908od_b_c @ Xs ) ) ) ) ) ) ) ).

% non_sym_dist_pairs_elems
thf(fact_269_non__sym__dist__pairs__elems,axiom,
    ! [X3: b,Xs: list_b,Y: b] :
      ( ( member_b @ X3 @ ( set_b2 @ Xs ) )
     => ( ( member_b @ Y @ ( set_b2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member7862447936710763792od_b_b @ ( product_Pair_b_b @ X3 @ Y ) @ ( set_Product_prod_b_b2 @ ( non_sym_dist_pairs_b @ Xs ) ) )
            | ( member7862447936710763792od_b_b @ ( product_Pair_b_b @ Y @ X3 ) @ ( set_Product_prod_b_b2 @ ( non_sym_dist_pairs_b @ Xs ) ) ) ) ) ) ) ).

% non_sym_dist_pairs_elems
thf(fact_270_non__sym__dist__pairs__elems,axiom,
    ! [X3: c,Xs: list_c,Y: c] :
      ( ( member_c @ X3 @ ( set_c2 @ Xs ) )
     => ( ( member_c @ Y @ ( set_c2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member5074992359041316560od_c_c @ ( product_Pair_c_c @ X3 @ Y ) @ ( set_Product_prod_c_c2 @ ( non_sym_dist_pairs_c @ Xs ) ) )
            | ( member5074992359041316560od_c_c @ ( product_Pair_c_c @ Y @ X3 ) @ ( set_Product_prod_c_c2 @ ( non_sym_dist_pairs_c @ Xs ) ) ) ) ) ) ) ).

% non_sym_dist_pairs_elems
thf(fact_271_non__sym__dist__pairs__elems,axiom,
    ! [X3: a,Xs: list_a,Y: a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
     => ( ( member_a @ Y @ ( set_a2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ X3 @ Y ) @ ( set_Product_prod_a_a2 @ ( non_sym_dist_pairs_a @ Xs ) ) )
            | ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ Y @ X3 ) @ ( set_Product_prod_a_a2 @ ( non_sym_dist_pairs_a @ Xs ) ) ) ) ) ) ) ).

% non_sym_dist_pairs_elems
thf(fact_272_non__sym__dist__pairs__elems,axiom,
    ! [X3: option_a,Xs: list_option_a,Y: option_a] :
      ( ( member_option_a @ X3 @ ( set_option_a2 @ Xs ) )
     => ( ( member_option_a @ Y @ ( set_option_a2 @ Xs ) )
       => ( ( X3 != Y )
         => ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) )
            | ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ Y @ X3 ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) ) ) ) ) ) ).

% non_sym_dist_pairs_elems
thf(fact_273_non__sym__dist__pairs__elems__distinct_I1_J,axiom,
    ! [X3: produc1359548802814378470tion_a,Y: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member1364567196453864272tion_a @ ( produc6894522847932232471tion_a @ X3 @ Y ) @ ( set_Pr3522298340653576636tion_a @ ( non_sy8571533894597929818tion_a @ Xs ) ) )
     => ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(1)
thf(fact_274_non__sym__dist__pairs__elems__distinct_I1_J,axiom,
    ! [X3: product_prod_b_c,Y: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7104721839413753296od_b_c @ ( produc6366901981060558487od_b_c @ X3 @ Y ) @ ( set_Pr7267323205303737404od_b_c @ ( non_sy6082845619963730908od_b_c @ Xs ) ) )
     => ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(1)
thf(fact_275_non__sym__dist__pairs__elems__distinct_I1_J,axiom,
    ! [X3: b,Y: b,Xs: list_b] :
      ( ( member7862447936710763792od_b_b @ ( product_Pair_b_b @ X3 @ Y ) @ ( set_Product_prod_b_b2 @ ( non_sym_dist_pairs_b @ Xs ) ) )
     => ( member_b @ X3 @ ( set_b2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(1)
thf(fact_276_non__sym__dist__pairs__elems__distinct_I1_J,axiom,
    ! [X3: c,Y: c,Xs: list_c] :
      ( ( member5074992359041316560od_c_c @ ( product_Pair_c_c @ X3 @ Y ) @ ( set_Product_prod_c_c2 @ ( non_sym_dist_pairs_c @ Xs ) ) )
     => ( member_c @ X3 @ ( set_c2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(1)
thf(fact_277_non__sym__dist__pairs__elems__distinct_I1_J,axiom,
    ! [X3: a,Y: a,Xs: list_a] :
      ( ( member1426531477525435216od_a_a @ ( product_Pair_a_a @ X3 @ Y ) @ ( set_Product_prod_a_a2 @ ( non_sym_dist_pairs_a @ Xs ) ) )
     => ( member_a @ X3 @ ( set_a2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(1)
thf(fact_278_non__sym__dist__pairs__elems__distinct_I1_J,axiom,
    ! [X3: option_a,Y: option_a,Xs: list_option_a] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ ( set_Pr948796958549772220tion_a @ ( non_sy3588569677374631096tion_a @ Xs ) ) )
     => ( member_option_a @ X3 @ ( set_option_a2 @ Xs ) ) ) ).

% non_sym_dist_pairs_elems_distinct(1)
thf(fact_279_f,axiom,
    ( f
    = ( produc3057695370585535359tion_a
      @ ^ [X5: b,Y3: c] :
          ( produc6886125431942075136tion_a
          @ ^ [A5: option_a,B4: option_a] :
              ( case_o8532513079010850397on_a_a
              @ ( case_o8532513079010850397on_a_a @ none_P2271573532998059335tion_a
                @ ^ [Q23: a] : ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ none_a @ ( some_a @ Q23 ) ) ) )
                @ B4 )
              @ ^ [Q14: a] :
                  ( case_o8532513079010850397on_a_a @ ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ ( some_a @ Q14 ) @ none_a ) ) )
                  @ ^ [Q23: a] :
                      ( if_opt6106225609937793522tion_a
                      @ ( ( ofsm_table_a_b_c @ m
                          @ ^ [Q5: a] : ( states_a_b_c @ m )
                          @ k
                          @ Q14 )
                       != ( ofsm_table_a_b_c @ m
                          @ ^ [Q5: a] : ( states_a_b_c @ m )
                          @ k
                          @ Q23 ) )
                      @ ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ ( some_a @ Q14 ) @ ( some_a @ Q23 ) ) ) )
                      @ none_P2271573532998059335tion_a )
                  @ B4 )
              @ A5 )
          @ ( produc9011544418120257559tion_a @ ( h_obs_a_b_c @ m @ q1 @ X5 @ Y3 ) @ ( h_obs_a_b_c @ m @ q2 @ X5 @ Y3 ) ) ) ) ) ).

% f
thf(fact_280_output__complete__alt__def,axiom,
    ( output3834324022317553264_a_b_c
    = ( ^ [M3: fsm_a_b_c] :
        ! [Q5: a,X5: b] :
          ( ? [Y3: c,Q6: a] : ( member5502040268208861279od_c_a @ ( produc5762801557034676134od_c_a @ Q5 @ ( produc3440865914000881661od_c_a @ X5 @ ( product_Pair_c_a @ Y3 @ Q6 ) ) ) @ ( transitions_a_b_c @ M3 ) )
         => ! [Y3: c] :
              ( ( member_c @ Y3 @ ( outputs_a_b_c @ M3 ) )
             => ? [Q6: a] : ( member5502040268208861279od_c_a @ ( produc5762801557034676134od_c_a @ Q5 @ ( produc3440865914000881661od_c_a @ X5 @ ( product_Pair_c_a @ Y3 @ Q6 ) ) ) @ ( transitions_a_b_c @ M3 ) ) ) ) ) ) ).

% output_complete_alt_def
thf(fact_281_output__complete__alt__def,axiom,
    ( output4318084302544301521tion_a
    = ( ^ [M3: fsm_op7083421644242023300tion_a] :
        ! [Q5: option_a,X5: product_prod_b_c] :
          ( ? [Y3: option_a,Q6: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q5 @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) )
         => ! [Y3: option_a] :
              ( ( member_option_a @ Y3 @ ( output1347265331858639297tion_a @ M3 ) )
             => ? [Q6: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q5 @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) ) ) ) ) ) ).

% output_complete_alt_def
thf(fact_282_h__obs__distinguishes,axiom,
    ! [M: fsm_a_b_c,Q16: a,X3: b,Y: c,Q12: a,Q24: a] :
      ( ( observable_a_b_c @ M )
     => ( ( ( h_obs_a_b_c @ M @ Q16 @ X3 @ Y )
          = ( some_a @ Q12 ) )
       => ( ( ( h_obs_a_b_c @ M @ Q24 @ X3 @ Y )
            = none_a )
         => ( distinguishes_a_b_c @ M @ Q16 @ Q24 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) ) ) ) ).

% h_obs_distinguishes
thf(fact_283_h__obs__distinguishes,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,Q16: a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q12: a,Q24: a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( ( h_obs_502279454451148624tion_a @ M @ Q16 @ X3 @ Y )
          = ( some_a @ Q12 ) )
       => ( ( ( h_obs_502279454451148624tion_a @ M @ Q24 @ X3 @ Y )
            = none_a )
         => ( distin2101305680231671677tion_a @ M @ Q16 @ Q24 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) ) ) ) ).

% h_obs_distinguishes
thf(fact_284_h__obs__distinguishes,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,Q16: a,X3: option_a,Y: option_a,Q12: a,Q24: a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( ( h_obs_2762009199847384593tion_a @ M @ Q16 @ X3 @ Y )
          = ( some_a @ Q12 ) )
       => ( ( ( h_obs_2762009199847384593tion_a @ M @ Q24 @ X3 @ Y )
            = none_a )
         => ( distin2171398021799776318tion_a @ M @ Q16 @ Q24 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) ) ) ) ).

% h_obs_distinguishes
thf(fact_285_h__obs__distinguishes,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,Q16: produc1359548802814378470tion_a,X3: b,Y: c,Q12: produc1359548802814378470tion_a,Q24: produc1359548802814378470tion_a] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ Q16 @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q12 ) )
       => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ Q24 @ X3 @ Y )
            = none_P2271573532998059335tion_a )
         => ( distin3063819344349927783_a_b_c @ M @ Q16 @ Q24 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) ) ) ) ).

% h_obs_distinguishes
thf(fact_286_h__obs__distinguishes,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,Q16: produc1359548802814378470tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q12: produc1359548802814378470tion_a,Q24: produc1359548802814378470tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( ( h_obs_2034362272866080824tion_a @ M @ Q16 @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q12 ) )
       => ( ( ( h_obs_2034362272866080824tion_a @ M @ Q24 @ X3 @ Y )
            = none_P2271573532998059335tion_a )
         => ( distin3570841250611833445tion_a @ M @ Q16 @ Q24 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) ) ) ) ).

% h_obs_distinguishes
thf(fact_287_h__obs__distinguishes,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,Q16: produc1359548802814378470tion_a,X3: option_a,Y: option_a,Q12: produc1359548802814378470tion_a,Q24: produc1359548802814378470tion_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( ( h_obs_5157205410614601465tion_a @ M @ Q16 @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q12 ) )
       => ( ( ( h_obs_5157205410614601465tion_a @ M @ Q24 @ X3 @ Y )
            = none_P2271573532998059335tion_a )
         => ( distin149889238852854566tion_a @ M @ Q16 @ Q24 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) ) ) ) ).

% h_obs_distinguishes
thf(fact_288_completely__specified__alt__def,axiom,
    ( comple6900478119722646120_a_b_c
    = ( ^ [M3: fsm_a_b_c] :
        ! [X5: a] :
          ( ( member_a @ X5 @ ( states_a_b_c @ M3 ) )
         => ! [Y3: b] :
              ( ( member_b @ Y3 @ ( inputs_a_b_c @ M3 ) )
             => ? [Q6: a,Z: c] : ( member5502040268208861279od_c_a @ ( produc5762801557034676134od_c_a @ X5 @ ( produc3440865914000881661od_c_a @ Y3 @ ( product_Pair_c_a @ Z @ Q6 ) ) ) @ ( transitions_a_b_c @ M3 ) ) ) ) ) ) ).

% completely_specified_alt_def
thf(fact_289_completely__specified__alt__def,axiom,
    ( comple2766019480588710345tion_a
    = ( ^ [M3: fsm_op7083421644242023300tion_a] :
        ! [X5: option_a] :
          ( ( member_option_a @ X5 @ ( states3335001888204056489tion_a @ M3 ) )
         => ! [Y3: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ Y3 @ ( inputs391937407206093570tion_a @ M3 ) )
             => ? [Q6: option_a,Z: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ X5 @ ( produc7403377568244983126tion_a @ Y3 @ ( produc9011544418120257559tion_a @ Z @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) ) ) ) ) ) ).

% completely_specified_alt_def
thf(fact_290_deterministic__alt__def,axiom,
    ( determ8225413341608954561tion_a
    = ( ^ [M3: fsm_op7083421644242023300tion_a] :
        ! [Q13: option_a,X5: product_prod_b_c,Y4: option_a,Y5: option_a,Q14: option_a,Q15: option_a] :
          ( ( ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q13 @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y4 @ Q14 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) )
            & ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q13 @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y5 @ Q15 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) ) )
         => ( ( Y4 = Y5 )
            & ( Q14 = Q15 ) ) ) ) ) ).

% deterministic_alt_def
thf(fact_291_find__first__distinct__ofsm__table__no__check__def,axiom,
    ( find_f9101274620504551506_a_b_c
    = ( ^ [M3: fsm_a_b_c,Q13: a,Q25: a,K2: nat] :
          ( if_nat
          @ ( ( ofsm_table_a_b_c @ M3
              @ ^ [Q5: a] : ( states_a_b_c @ M3 )
              @ K2
              @ Q13 )
           != ( ofsm_table_a_b_c @ M3
              @ ^ [Q5: a] : ( states_a_b_c @ M3 )
              @ K2
              @ Q25 ) )
          @ K2
          @ ( find_f9101274620504551506_a_b_c @ M3 @ Q13 @ Q25 @ ( suc @ K2 ) ) ) ) ) ).

% find_first_distinct_ofsm_table_no_check_def
thf(fact_292_single__input__alt__def,axiom,
    ( single3000559957900482993tion_a
    = ( ^ [M3: fsm_op7083421644242023300tion_a] :
        ! [Q13: option_a,X5: product_prod_b_c,X6: product_prod_b_c,Y3: option_a,Y4: option_a,Q14: option_a,Q15: option_a] :
          ( ( ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q13 @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q14 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) )
            & ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q13 @ ( produc7403377568244983126tion_a @ X6 @ ( produc9011544418120257559tion_a @ Y4 @ Q15 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) ) )
         => ( X5 = X6 ) ) ) ) ).

% single_input_alt_def
thf(fact_293_delete__aux_Ocases,axiom,
    ! [X3: produc6475121930738208726od_b_c] :
      ( ! [K3: b] :
          ( X3
         != ( produc561751498933632326od_b_c @ K3 @ nil_Product_prod_b_c ) )
     => ~ ! [K3: b,K4: b,V: c,Xs2: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc561751498933632326od_b_c @ K3 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ K4 @ V ) @ Xs2 ) ) ) ) ).

% delete_aux.cases
thf(fact_294_delete__aux_Ocases,axiom,
    ! [X3: produc1667262785325640619tion_a] :
      ( ! [K3: product_prod_b_c] :
          ( X3
         != ( produc1371384365699412507tion_a @ K3 @ nil_Pr596483954593762796tion_a ) )
     => ~ ! [K3: product_prod_b_c,K4: product_prod_b_c,V: produc3509355604313844263tion_a,Xs2: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc1371384365699412507tion_a @ K3 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ K4 @ V ) @ Xs2 ) ) ) ) ).

% delete_aux.cases
thf(fact_295_delete__aux_Ocases,axiom,
    ! [X3: produc5196315925859433104tion_a] :
      ( ! [K3: option_a] :
          ( X3
         != ( produc5432010977885840384tion_a @ K3 @ nil_Pr2074429324785754669tion_a ) )
     => ~ ! [K3: option_a,K4: option_a,V: option_a,Xs2: list_P2261792721279755821tion_a] :
            ( X3
           != ( produc5432010977885840384tion_a @ K3 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ K4 @ V ) @ Xs2 ) ) ) ) ).

% delete_aux.cases
thf(fact_296_case__prod__conv,axiom,
    ! [F: b > c > option5121868808592388652tion_a,A: b,B: c] :
      ( ( produc3057695370585535359tion_a @ F @ ( product_Pair_b_c @ A @ B ) )
      = ( F @ A @ B ) ) ).

% case_prod_conv
thf(fact_297_case__prod__conv,axiom,
    ! [F: option_a > option_a > option5121868808592388652tion_a,A: option_a,B: option_a] :
      ( ( produc6886125431942075136tion_a @ F @ ( produc9011544418120257559tion_a @ A @ B ) )
      = ( F @ A @ B ) ) ).

% case_prod_conv
thf(fact_298_prod_Ocase__distrib,axiom,
    ! [H: option5121868808592388652tion_a > option5121868808592388652tion_a,F: b > c > option5121868808592388652tion_a,Prod: product_prod_b_c] :
      ( ( H @ ( produc3057695370585535359tion_a @ F @ Prod ) )
      = ( produc3057695370585535359tion_a
        @ ^ [X12: b,X23: c] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_299_prod_Ocase__distrib,axiom,
    ! [H: option5121868808592388652tion_a > option5121868808592388652tion_a,F: option_a > option_a > option5121868808592388652tion_a,Prod: produc3509355604313844263tion_a] :
      ( ( H @ ( produc6886125431942075136tion_a @ F @ Prod ) )
      = ( produc6886125431942075136tion_a
        @ ^ [X12: option_a,X23: option_a] : ( H @ ( F @ X12 @ X23 ) )
        @ Prod ) ) ).

% prod.case_distrib
thf(fact_300_option_Ocase__distrib,axiom,
    ! [H: option5121868808592388652tion_a > option5121868808592388652tion_a,F12: option5121868808592388652tion_a,F22: a > option5121868808592388652tion_a,Option: option_a] :
      ( ( H @ ( case_o8532513079010850397on_a_a @ F12 @ F22 @ Option ) )
      = ( case_o8532513079010850397on_a_a @ ( H @ F12 )
        @ ^ [X5: a] : ( H @ ( F22 @ X5 ) )
        @ Option ) ) ).

% option.case_distrib
thf(fact_301_old_Oprod_Ocase,axiom,
    ! [F: b > c > option5121868808592388652tion_a,X1: b,X2: c] :
      ( ( produc3057695370585535359tion_a @ F @ ( product_Pair_b_c @ X1 @ X2 ) )
      = ( F @ X1 @ X2 ) ) ).

% old.prod.case
thf(fact_302_old_Oprod_Ocase,axiom,
    ! [F: option_a > option_a > option5121868808592388652tion_a,X1: option_a,X2: option_a] :
      ( ( produc6886125431942075136tion_a @ F @ ( produc9011544418120257559tion_a @ X1 @ X2 ) )
      = ( F @ X1 @ X2 ) ) ).

% old.prod.case
thf(fact_303_cond__case__prod__eta,axiom,
    ! [F: b > c > option5121868808592388652tion_a,G: product_prod_b_c > option5121868808592388652tion_a] :
      ( ! [X: b,Y2: c] :
          ( ( F @ X @ Y2 )
          = ( G @ ( product_Pair_b_c @ X @ Y2 ) ) )
     => ( ( produc3057695370585535359tion_a @ F )
        = G ) ) ).

% cond_case_prod_eta
thf(fact_304_cond__case__prod__eta,axiom,
    ! [F: option_a > option_a > option5121868808592388652tion_a,G: produc3509355604313844263tion_a > option5121868808592388652tion_a] :
      ( ! [X: option_a,Y2: option_a] :
          ( ( F @ X @ Y2 )
          = ( G @ ( produc9011544418120257559tion_a @ X @ Y2 ) ) )
     => ( ( produc6886125431942075136tion_a @ F )
        = G ) ) ).

% cond_case_prod_eta
thf(fact_305_case__prod__eta,axiom,
    ! [F: product_prod_b_c > option5121868808592388652tion_a] :
      ( ( produc3057695370585535359tion_a
        @ ^ [X5: b,Y3: c] : ( F @ ( product_Pair_b_c @ X5 @ Y3 ) ) )
      = F ) ).

% case_prod_eta
thf(fact_306_case__prod__eta,axiom,
    ! [F: produc3509355604313844263tion_a > option5121868808592388652tion_a] :
      ( ( produc6886125431942075136tion_a
        @ ^ [X5: option_a,Y3: option_a] : ( F @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) ) )
      = F ) ).

% case_prod_eta
thf(fact_307_case__prodE2,axiom,
    ! [Q7: option5121868808592388652tion_a > $o,P: b > c > option5121868808592388652tion_a,Z3: product_prod_b_c] :
      ( ( Q7 @ ( produc3057695370585535359tion_a @ P @ Z3 ) )
     => ~ ! [X: b,Y2: c] :
            ( ( Z3
              = ( product_Pair_b_c @ X @ Y2 ) )
           => ~ ( Q7 @ ( P @ X @ Y2 ) ) ) ) ).

% case_prodE2
thf(fact_308_case__prodE2,axiom,
    ! [Q7: option5121868808592388652tion_a > $o,P: option_a > option_a > option5121868808592388652tion_a,Z3: produc3509355604313844263tion_a] :
      ( ( Q7 @ ( produc6886125431942075136tion_a @ P @ Z3 ) )
     => ~ ! [X: option_a,Y2: option_a] :
            ( ( Z3
              = ( produc9011544418120257559tion_a @ X @ Y2 ) )
           => ~ ( Q7 @ ( P @ X @ Y2 ) ) ) ) ).

% case_prodE2
thf(fact_309_option_Osimps_I5_J,axiom,
    ! [F12: option5121868808592388652tion_a,F22: a > option5121868808592388652tion_a,X2: a] :
      ( ( case_o8532513079010850397on_a_a @ F12 @ F22 @ ( some_a @ X2 ) )
      = ( F22 @ X2 ) ) ).

% option.simps(5)
thf(fact_310_option_Osimps_I4_J,axiom,
    ! [F12: option5121868808592388652tion_a,F22: a > option5121868808592388652tion_a] :
      ( ( case_o8532513079010850397on_a_a @ F12 @ F22 @ none_a )
      = F12 ) ).

% option.simps(4)
thf(fact_311_distinguishes__not__Nil,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,Q16: produc1359548802814378470tion_a,Q24: produc1359548802814378470tion_a,Io: list_P7785822056432494700tion_a] :
      ( ( distin3570841250611833445tion_a @ M @ Q16 @ Q24 @ Io )
     => ( ( member5139186223151194895tion_a @ Q16 @ ( states8609567504773501230tion_a @ M ) )
       => ( ( member5139186223151194895tion_a @ Q24 @ ( states8609567504773501230tion_a @ M ) )
         => ( Io != nil_Pr596483954593762796tion_a ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_312_distinguishes__not__Nil,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,Q16: a,Q24: a,Io: list_P7785822056432494700tion_a] :
      ( ( distin2101305680231671677tion_a @ M @ Q16 @ Q24 @ Io )
     => ( ( member_a @ Q16 @ ( states483080441059632198tion_a @ M ) )
       => ( ( member_a @ Q24 @ ( states483080441059632198tion_a @ M ) )
         => ( Io != nil_Pr596483954593762796tion_a ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_313_distinguishes__not__Nil,axiom,
    ! [M: fsm_c_1147223751206369699tion_a,Q16: c,Q24: c,Io: list_P7785822056432494700tion_a] :
      ( ( distin1781666332054766719tion_a @ M @ Q16 @ Q24 @ Io )
     => ( ( member_c @ Q16 @ ( states163441092882727240tion_a @ M ) )
       => ( ( member_c @ Q24 @ ( states163441092882727240tion_a @ M ) )
         => ( Io != nil_Pr596483954593762796tion_a ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_314_distinguishes__not__Nil,axiom,
    ! [M: fsm_Pr5936464569842867211tion_a,Q16: product_prod_b_c,Q24: product_prod_b_c,Io: list_P7785822056432494700tion_a] :
      ( ( distin4433053321772438503tion_a @ M @ Q16 @ Q24 @ Io )
     => ( ( member7862447941013992593od_b_c @ Q16 @ ( states327732041617776560tion_a @ M ) )
       => ( ( member7862447941013992593od_b_c @ Q24 @ ( states327732041617776560tion_a @ M ) )
         => ( Io != nil_Pr596483954593762796tion_a ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_315_distinguishes__not__Nil,axiom,
    ! [M: fsm_b_8424555702684727970tion_a,Q16: b,Q24: b,Io: list_P7785822056432494700tion_a] :
      ( ( distin1941486006143219198tion_a @ M @ Q16 @ Q24 @ Io )
     => ( ( member_b @ Q16 @ ( states323260766971179719tion_a @ M ) )
       => ( ( member_b @ Q24 @ ( states323260766971179719tion_a @ M ) )
         => ( Io != nil_Pr596483954593762796tion_a ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_316_distinguishes__not__Nil,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,Q16: produc1359548802814378470tion_a,Q24: produc1359548802814378470tion_a,Io: list_P903359562653991662od_b_c] :
      ( ( distin3063819344349927783_a_b_c @ M @ Q16 @ Q24 @ Io )
     => ( ( member5139186223151194895tion_a @ Q16 @ ( states8181870101050041648_a_b_c @ M ) )
       => ( ( member5139186223151194895tion_a @ Q24 @ ( states8181870101050041648_a_b_c @ M ) )
         => ( Io != nil_Product_prod_b_c ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_317_distinguishes__not__Nil,axiom,
    ! [M: fsm_a_b_c,Q16: a,Q24: a,Io: list_P903359562653991662od_b_c] :
      ( ( distinguishes_a_b_c @ M @ Q16 @ Q24 @ Io )
     => ( ( member_a @ Q16 @ ( states_a_b_c @ M ) )
       => ( ( member_a @ Q24 @ ( states_a_b_c @ M ) )
         => ( Io != nil_Product_prod_b_c ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_318_distinguishes__not__Nil,axiom,
    ! [M: fsm_c_b_c,Q16: c,Q24: c,Io: list_P903359562653991662od_b_c] :
      ( ( distinguishes_c_b_c @ M @ Q16 @ Q24 @ Io )
     => ( ( member_c @ Q16 @ ( states_c_b_c @ M ) )
       => ( ( member_c @ Q24 @ ( states_c_b_c @ M ) )
         => ( Io != nil_Product_prod_b_c ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_319_distinguishes__not__Nil,axiom,
    ! [M: fsm_Pr8946560376811747725_c_b_c,Q16: product_prod_b_c,Q24: product_prod_b_c,Io: list_P903359562653991662od_b_c] :
      ( ( distin2910207492170677481_c_b_c @ M @ Q16 @ Q24 @ Io )
     => ( ( member7862447941013992593od_b_c @ Q16 @ ( states8981316748681014706_c_b_c @ M ) )
       => ( ( member7862447941013992593od_b_c @ Q24 @ ( states8981316748681014706_c_b_c @ M ) )
         => ( Io != nil_Product_prod_b_c ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_320_distinguishes__not__Nil,axiom,
    ! [M: fsm_b_b_c,Q16: b,Q24: b,Io: list_P903359562653991662od_b_c] :
      ( ( distinguishes_b_b_c @ M @ Q16 @ Q24 @ Io )
     => ( ( member_b @ Q16 @ ( states_b_b_c @ M ) )
       => ( ( member_b @ Q24 @ ( states_b_b_c @ M ) )
         => ( Io != nil_Product_prod_b_c ) ) ) ) ).

% distinguishes_not_Nil
thf(fact_321_map__entry_Ocases,axiom,
    ! [X3: produc5304465490986466195tion_a] :
      ( ! [K3: product_prod_b_c,F2: produc3509355604313844263tion_a > produc3509355604313844263tion_a] :
          ( X3
         != ( produc2947908967115209229tion_a @ K3 @ ( produc3812264733998805550tion_a @ F2 @ nil_Pr596483954593762796tion_a ) ) )
     => ~ ! [K3: product_prod_b_c,F2: produc3509355604313844263tion_a > produc3509355604313844263tion_a,P6: produc1359548802814378470tion_a,Ps: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc2947908967115209229tion_a @ K3 @ ( produc3812264733998805550tion_a @ F2 @ ( cons_P7206946803070396828tion_a @ P6 @ Ps ) ) ) ) ) ).

% map_entry.cases
thf(fact_322_map__entry_Ocases,axiom,
    ! [X3: produc6452300523622238572od_b_c] :
      ( ! [K3: b,F2: c > c] :
          ( X3
         != ( produc7015427828931889894od_b_c @ K3 @ ( produc1101678828523717360od_b_c @ F2 @ nil_Product_prod_b_c ) ) )
     => ~ ! [K3: b,F2: c > c,P6: product_prod_b_c,Ps: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc7015427828931889894od_b_c @ K3 @ ( produc1101678828523717360od_b_c @ F2 @ ( cons_P4529483553340347422od_b_c @ P6 @ Ps ) ) ) ) ) ).

% map_entry.cases
thf(fact_323_map__default_Ocases,axiom,
    ! [X3: produc7503123379815984105tion_a] :
      ( ! [K3: product_prod_b_c,V: produc3509355604313844263tion_a,F2: produc3509355604313844263tion_a > produc3509355604313844263tion_a] :
          ( X3
         != ( produc5465395319470875747tion_a @ K3 @ ( produc4605057840462221132tion_a @ V @ ( produc3812264733998805550tion_a @ F2 @ nil_Pr596483954593762796tion_a ) ) ) )
     => ~ ! [K3: product_prod_b_c,V: produc3509355604313844263tion_a,F2: produc3509355604313844263tion_a > produc3509355604313844263tion_a,P6: produc1359548802814378470tion_a,Ps: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc5465395319470875747tion_a @ K3 @ ( produc4605057840462221132tion_a @ V @ ( produc3812264733998805550tion_a @ F2 @ ( cons_P7206946803070396828tion_a @ P6 @ Ps ) ) ) ) ) ) ).

% map_default.cases
thf(fact_324_map__default_Ocases,axiom,
    ! [X3: produc2009451851958091931od_b_c] :
      ( ! [K3: b,V: c,F2: c > c] :
          ( X3
         != ( produc1384939585547926677od_b_c @ K3 @ ( produc3590379597927054951od_b_c @ V @ ( produc1101678828523717360od_b_c @ F2 @ nil_Product_prod_b_c ) ) ) )
     => ~ ! [K3: b,V: c,F2: c > c,P6: product_prod_b_c,Ps: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc1384939585547926677od_b_c @ K3 @ ( produc3590379597927054951od_b_c @ V @ ( produc1101678828523717360od_b_c @ F2 @ ( cons_P4529483553340347422od_b_c @ P6 @ Ps ) ) ) ) ) ) ).

% map_default.cases
thf(fact_325_clearjunk_Ocases,axiom,
    ! [X3: list_P7785822056432494700tion_a] :
      ( ( X3 != nil_Pr596483954593762796tion_a )
     => ~ ! [P6: produc1359548802814378470tion_a,Ps: list_P7785822056432494700tion_a] :
            ( X3
           != ( cons_P7206946803070396828tion_a @ P6 @ Ps ) ) ) ).

% clearjunk.cases
thf(fact_326_clearjunk_Ocases,axiom,
    ! [X3: list_P903359562653991662od_b_c] :
      ( ( X3 != nil_Product_prod_b_c )
     => ~ ! [P6: product_prod_b_c,Ps: list_P903359562653991662od_b_c] :
            ( X3
           != ( cons_P4529483553340347422od_b_c @ P6 @ Ps ) ) ) ).

% clearjunk.cases
thf(fact_327_longest__common__prefix_Ocases,axiom,
    ! [X3: produc5245323578580934439tion_a] :
      ( ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a,Y2: produc1359548802814378470tion_a,Ys3: list_P7785822056432494700tion_a] :
          ( X3
         != ( produc3719507787779299095tion_a @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) @ ( cons_P7206946803070396828tion_a @ Y2 @ Ys3 ) ) )
     => ( ! [Uv: list_P7785822056432494700tion_a] :
            ( X3
           != ( produc3719507787779299095tion_a @ nil_Pr596483954593762796tion_a @ Uv ) )
       => ~ ! [Uu2: list_P7785822056432494700tion_a] :
              ( X3
             != ( produc3719507787779299095tion_a @ Uu2 @ nil_Pr596483954593762796tion_a ) ) ) ) ).

% longest_common_prefix.cases
thf(fact_328_longest__common__prefix_Ocases,axiom,
    ! [X3: produc5878855887281848999od_b_c] :
      ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Y2: product_prod_b_c,Ys3: list_P903359562653991662od_b_c] :
          ( X3
         != ( produc3076307724246486423od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ ( cons_P4529483553340347422od_b_c @ Y2 @ Ys3 ) ) )
     => ( ! [Uv: list_P903359562653991662od_b_c] :
            ( X3
           != ( produc3076307724246486423od_b_c @ nil_Product_prod_b_c @ Uv ) )
       => ~ ! [Uu2: list_P903359562653991662od_b_c] :
              ( X3
             != ( produc3076307724246486423od_b_c @ Uu2 @ nil_Product_prod_b_c ) ) ) ) ).

% longest_common_prefix.cases
thf(fact_329_longest__common__prefix_Ocases,axiom,
    ! [X3: produc3963297410138542439list_b] :
      ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b] :
          ( X3
         != ( produc1564554178308465111list_b @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) )
     => ( ! [Uv: list_b] :
            ( X3
           != ( produc1564554178308465111list_b @ nil_b @ Uv ) )
       => ~ ! [Uu2: list_b] :
              ( X3
             != ( produc1564554178308465111list_b @ Uu2 @ nil_b ) ) ) ) ).

% longest_common_prefix.cases
thf(fact_330_longest__common__prefix_Ocases,axiom,
    ! [X3: produc7985223085803476903list_c] :
      ( ! [X: c,Xs2: list_c,Y2: c,Ys3: list_c] :
          ( X3
         != ( produc5515445818230282391list_c @ ( cons_c @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) )
     => ( ! [Uv: list_c] :
            ( X3
           != ( produc5515445818230282391list_c @ nil_c @ Uv ) )
       => ~ ! [Uu2: list_c] :
              ( X3
             != ( produc5515445818230282391list_c @ Uu2 @ nil_c ) ) ) ) ).

% longest_common_prefix.cases
thf(fact_331_longest__common__prefix_Ocases,axiom,
    ! [X3: produc9164743771328383783list_a] :
      ( ! [X: a,Xs2: list_a,Y2: a,Ys3: list_a] :
          ( X3
         != ( produc6837034575241423639list_a @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) )
     => ( ! [Uv: list_a] :
            ( X3
           != ( produc6837034575241423639list_a @ nil_a @ Uv ) )
       => ~ ! [Uu2: list_a] :
              ( X3
             != ( produc6837034575241423639list_a @ Uu2 @ nil_a ) ) ) ) ).

% longest_common_prefix.cases
thf(fact_332_select__diverging__ofsm__table__io_Osimps,axiom,
    ( select2355175884866336335_a_b_c
    = ( ^ [M3: fsm_Pr4084281153683398667_a_b_c,Q13: produc1359548802814378470tion_a,Q25: produc1359548802814378470tion_a,K2: nat] :
          ( hd_Pro4999766883071446225tion_a
          @ ( map_fi5251985753137047240tion_a
            @ ( produc60224875418212223tion_a
              @ ^ [X5: b,Y3: c] :
                  ( produc5247268081628628736tion_a
                  @ ^ [A5: option5121868808592388652tion_a,B4: option5121868808592388652tion_a] :
                      ( case_o8960411972460962629tion_a
                      @ ( case_o8960411972460962629tion_a @ none_P4849659250516755783tion_a
                        @ ^ [Q23: produc1359548802814378470tion_a] : ( some_P9187608838995116235tion_a @ ( produc4287502265277869398tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc5025280594019148823tion_a @ none_P2271573532998059335tion_a @ ( some_P2468934990214623435tion_a @ Q23 ) ) ) )
                        @ B4 )
                      @ ^ [Q14: produc1359548802814378470tion_a] :
                          ( case_o8960411972460962629tion_a @ ( some_P9187608838995116235tion_a @ ( produc4287502265277869398tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc5025280594019148823tion_a @ ( some_P2468934990214623435tion_a @ Q14 ) @ none_P2271573532998059335tion_a ) ) )
                          @ ^ [Q23: produc1359548802814378470tion_a] :
                              ( if_opt2424821917594415602tion_a
                              @ ( ( ofsm_t4823684861003709802_a_b_c @ M3
                                  @ ^ [Q5: produc1359548802814378470tion_a] : ( states8181870101050041648_a_b_c @ M3 )
                                  @ ( minus_minus_nat @ K2 @ one_one_nat )
                                  @ Q14 )
                               != ( ofsm_t4823684861003709802_a_b_c @ M3
                                  @ ^ [Q5: produc1359548802814378470tion_a] : ( states8181870101050041648_a_b_c @ M3 )
                                  @ ( minus_minus_nat @ K2 @ one_one_nat )
                                  @ Q23 ) )
                              @ ( some_P9187608838995116235tion_a @ ( produc4287502265277869398tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc5025280594019148823tion_a @ ( some_P2468934990214623435tion_a @ Q14 ) @ ( some_P2468934990214623435tion_a @ Q23 ) ) ) )
                              @ none_P4849659250516755783tion_a )
                          @ B4 )
                      @ A5 )
                  @ ( produc5025280594019148823tion_a @ ( h_obs_7784731882632891962_a_b_c @ M3 @ Q13 @ X5 @ Y3 ) @ ( h_obs_7784731882632891962_a_b_c @ M3 @ Q25 @ X5 @ Y3 ) ) ) )
            @ ( product_b_c @ ( inputs1372579211786743033_a_b_c @ M3 ) @ ( output6342448897483057208_a_b_c @ M3 ) ) ) ) ) ) ).

% select_diverging_ofsm_table_io.simps
thf(fact_333_select__diverging__ofsm__table__io_Osimps,axiom,
    ( select6043575893837601639_a_b_c
    = ( ^ [M3: fsm_a_b_c,Q13: a,Q25: a,K2: nat] :
          ( hd_Pro2241809909539833041tion_a
          @ ( map_fi7170063521196241608tion_a
            @ ( produc3057695370585535359tion_a
              @ ^ [X5: b,Y3: c] :
                  ( produc6886125431942075136tion_a
                  @ ^ [A5: option_a,B4: option_a] :
                      ( case_o8532513079010850397on_a_a
                      @ ( case_o8532513079010850397on_a_a @ none_P2271573532998059335tion_a
                        @ ^ [Q23: a] : ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ none_a @ ( some_a @ Q23 ) ) ) )
                        @ B4 )
                      @ ^ [Q14: a] :
                          ( case_o8532513079010850397on_a_a @ ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ ( some_a @ Q14 ) @ none_a ) ) )
                          @ ^ [Q23: a] :
                              ( if_opt6106225609937793522tion_a
                              @ ( ( ofsm_table_a_b_c @ M3
                                  @ ^ [Q5: a] : ( states_a_b_c @ M3 )
                                  @ ( minus_minus_nat @ K2 @ one_one_nat )
                                  @ Q14 )
                               != ( ofsm_table_a_b_c @ M3
                                  @ ^ [Q5: a] : ( states_a_b_c @ M3 )
                                  @ ( minus_minus_nat @ K2 @ one_one_nat )
                                  @ Q23 ) )
                              @ ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ ( some_a @ Q14 ) @ ( some_a @ Q23 ) ) ) )
                              @ none_P2271573532998059335tion_a )
                          @ B4 )
                      @ A5 )
                  @ ( produc9011544418120257559tion_a @ ( h_obs_a_b_c @ M3 @ Q13 @ X5 @ Y3 ) @ ( h_obs_a_b_c @ M3 @ Q25 @ X5 @ Y3 ) ) ) )
            @ ( product_b_c @ ( inputs_as_list_a_b_c @ M3 ) @ ( output4084235763626582864_a_b_c @ M3 ) ) ) ) ) ) ).

% select_diverging_ofsm_table_io.simps
thf(fact_334_select__diverging__ofsm__table__io_Oelims,axiom,
    ! [X3: fsm_Pr4084281153683398667_a_b_c,Xa: produc1359548802814378470tion_a,Xb: produc1359548802814378470tion_a,Xc: nat,Y: produc1981356485087006182tion_a] :
      ( ( ( select2355175884866336335_a_b_c @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( Y
        = ( hd_Pro4999766883071446225tion_a
          @ ( map_fi5251985753137047240tion_a
            @ ( produc60224875418212223tion_a
              @ ^ [X5: b,Y3: c] :
                  ( produc5247268081628628736tion_a
                  @ ^ [A5: option5121868808592388652tion_a,B4: option5121868808592388652tion_a] :
                      ( case_o8960411972460962629tion_a
                      @ ( case_o8960411972460962629tion_a @ none_P4849659250516755783tion_a
                        @ ^ [Q23: produc1359548802814378470tion_a] : ( some_P9187608838995116235tion_a @ ( produc4287502265277869398tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc5025280594019148823tion_a @ none_P2271573532998059335tion_a @ ( some_P2468934990214623435tion_a @ Q23 ) ) ) )
                        @ B4 )
                      @ ^ [Q14: produc1359548802814378470tion_a] :
                          ( case_o8960411972460962629tion_a @ ( some_P9187608838995116235tion_a @ ( produc4287502265277869398tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc5025280594019148823tion_a @ ( some_P2468934990214623435tion_a @ Q14 ) @ none_P2271573532998059335tion_a ) ) )
                          @ ^ [Q23: produc1359548802814378470tion_a] :
                              ( if_opt2424821917594415602tion_a
                              @ ( ( ofsm_t4823684861003709802_a_b_c @ X3
                                  @ ^ [Q5: produc1359548802814378470tion_a] : ( states8181870101050041648_a_b_c @ X3 )
                                  @ ( minus_minus_nat @ Xc @ one_one_nat )
                                  @ Q14 )
                               != ( ofsm_t4823684861003709802_a_b_c @ X3
                                  @ ^ [Q5: produc1359548802814378470tion_a] : ( states8181870101050041648_a_b_c @ X3 )
                                  @ ( minus_minus_nat @ Xc @ one_one_nat )
                                  @ Q23 ) )
                              @ ( some_P9187608838995116235tion_a @ ( produc4287502265277869398tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc5025280594019148823tion_a @ ( some_P2468934990214623435tion_a @ Q14 ) @ ( some_P2468934990214623435tion_a @ Q23 ) ) ) )
                              @ none_P4849659250516755783tion_a )
                          @ B4 )
                      @ A5 )
                  @ ( produc5025280594019148823tion_a @ ( h_obs_7784731882632891962_a_b_c @ X3 @ Xa @ X5 @ Y3 ) @ ( h_obs_7784731882632891962_a_b_c @ X3 @ Xb @ X5 @ Y3 ) ) ) )
            @ ( product_b_c @ ( inputs1372579211786743033_a_b_c @ X3 ) @ ( output6342448897483057208_a_b_c @ X3 ) ) ) ) ) ) ).

% select_diverging_ofsm_table_io.elims
thf(fact_335_select__diverging__ofsm__table__io_Oelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: a,Xc: nat,Y: produc1359548802814378470tion_a] :
      ( ( ( select6043575893837601639_a_b_c @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( Y
        = ( hd_Pro2241809909539833041tion_a
          @ ( map_fi7170063521196241608tion_a
            @ ( produc3057695370585535359tion_a
              @ ^ [X5: b,Y3: c] :
                  ( produc6886125431942075136tion_a
                  @ ^ [A5: option_a,B4: option_a] :
                      ( case_o8532513079010850397on_a_a
                      @ ( case_o8532513079010850397on_a_a @ none_P2271573532998059335tion_a
                        @ ^ [Q23: a] : ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ none_a @ ( some_a @ Q23 ) ) ) )
                        @ B4 )
                      @ ^ [Q14: a] :
                          ( case_o8532513079010850397on_a_a @ ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ ( some_a @ Q14 ) @ none_a ) ) )
                          @ ^ [Q23: a] :
                              ( if_opt6106225609937793522tion_a
                              @ ( ( ofsm_table_a_b_c @ X3
                                  @ ^ [Q5: a] : ( states_a_b_c @ X3 )
                                  @ ( minus_minus_nat @ Xc @ one_one_nat )
                                  @ Q14 )
                               != ( ofsm_table_a_b_c @ X3
                                  @ ^ [Q5: a] : ( states_a_b_c @ X3 )
                                  @ ( minus_minus_nat @ Xc @ one_one_nat )
                                  @ Q23 ) )
                              @ ( some_P2468934990214623435tion_a @ ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( produc9011544418120257559tion_a @ ( some_a @ Q14 ) @ ( some_a @ Q23 ) ) ) )
                              @ none_P2271573532998059335tion_a )
                          @ B4 )
                      @ A5 )
                  @ ( produc9011544418120257559tion_a @ ( h_obs_a_b_c @ X3 @ Xa @ X5 @ Y3 ) @ ( h_obs_a_b_c @ X3 @ Xb @ X5 @ Y3 ) ) ) )
            @ ( product_b_c @ ( inputs_as_list_a_b_c @ X3 ) @ ( output4084235763626582864_a_b_c @ X3 ) ) ) ) ) ) ).

% select_diverging_ofsm_table_io.elims
thf(fact_336_distinguishes__after__prepend,axiom,
    ! [M: fsm_a_b_c,Q16: a,X3: b,Y: c,Q24: a,Gamma: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( ( h_obs_a_b_c @ M @ Q16 @ X3 @ Y )
         != none_a )
       => ( ( ( h_obs_a_b_c @ M @ Q24 @ X3 @ Y )
           != none_a )
         => ( ( distinguishes_a_b_c @ M @ ( after_a_b_c @ M @ Q16 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) @ ( after_a_b_c @ M @ Q24 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) @ Gamma )
           => ( distinguishes_a_b_c @ M @ Q16 @ Q24 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ).

% distinguishes_after_prepend
thf(fact_337_distinguishes__after__prepend,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,Q16: a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q24: a,Gamma: list_P7785822056432494700tion_a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( ( h_obs_502279454451148624tion_a @ M @ Q16 @ X3 @ Y )
         != none_a )
       => ( ( ( h_obs_502279454451148624tion_a @ M @ Q24 @ X3 @ Y )
           != none_a )
         => ( ( distin2101305680231671677tion_a @ M @ ( after_6104971424356839764tion_a @ M @ Q16 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) @ ( after_6104971424356839764tion_a @ M @ Q24 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) @ Gamma )
           => ( distin2101305680231671677tion_a @ M @ Q16 @ Q24 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ).

% distinguishes_after_prepend
thf(fact_338_distinguishes__after__prepend,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,Q16: a,X3: option_a,Y: option_a,Q24: a,Gamma: list_P2261792721279755821tion_a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( ( h_obs_2762009199847384593tion_a @ M @ Q16 @ X3 @ Y )
         != none_a )
       => ( ( ( h_obs_2762009199847384593tion_a @ M @ Q24 @ X3 @ Y )
           != none_a )
         => ( ( distin2171398021799776318tion_a @ M @ ( after_4826890630637713429tion_a @ M @ Q16 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) @ ( after_4826890630637713429tion_a @ M @ Q24 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) @ Gamma )
           => ( distin2171398021799776318tion_a @ M @ Q16 @ Q24 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ).

% distinguishes_after_prepend
thf(fact_339_distinguishes__after__prepend,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,Q16: produc1359548802814378470tion_a,X3: b,Y: c,Q24: produc1359548802814378470tion_a,Gamma: list_P903359562653991662od_b_c] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ Q16 @ X3 @ Y )
         != none_P2271573532998059335tion_a )
       => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ Q24 @ X3 @ Y )
           != none_P2271573532998059335tion_a )
         => ( ( distin3063819344349927783_a_b_c @ M @ ( after_4736860933871809598_a_b_c @ M @ Q16 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) @ ( after_4736860933871809598_a_b_c @ M @ Q24 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) @ Gamma )
           => ( distin3063819344349927783_a_b_c @ M @ Q16 @ Q24 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ).

% distinguishes_after_prepend
thf(fact_340_distinguishes__after__prepend,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,Q16: produc1359548802814378470tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q24: produc1359548802814378470tion_a,Gamma: list_P7785822056432494700tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( ( h_obs_2034362272866080824tion_a @ M @ Q16 @ X3 @ Y )
         != none_P2271573532998059335tion_a )
       => ( ( ( h_obs_2034362272866080824tion_a @ M @ Q24 @ X3 @ Y )
           != none_P2271573532998059335tion_a )
         => ( ( distin3570841250611833445tion_a @ M @ ( after_4666548563309070908tion_a @ M @ Q16 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) @ ( after_4666548563309070908tion_a @ M @ Q24 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) @ Gamma )
           => ( distin3570841250611833445tion_a @ M @ Q16 @ Q24 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ).

% distinguishes_after_prepend
thf(fact_341_distinguishes__after__prepend,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,Q16: produc1359548802814378470tion_a,X3: option_a,Y: option_a,Q24: produc1359548802814378470tion_a,Gamma: list_P2261792721279755821tion_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( ( h_obs_5157205410614601465tion_a @ M @ Q16 @ X3 @ Y )
         != none_P2271573532998059335tion_a )
       => ( ( ( h_obs_5157205410614601465tion_a @ M @ Q24 @ X3 @ Y )
           != none_P2271573532998059335tion_a )
         => ( ( distin149889238852854566tion_a @ M @ ( after_6806106828575809789tion_a @ M @ Q16 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) @ ( after_6806106828575809789tion_a @ M @ Q24 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) @ Gamma )
           => ( distin149889238852854566tion_a @ M @ Q16 @ Q24 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ).

% distinguishes_after_prepend
thf(fact_342_after__transition,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Q3: a] :
      ( ( observable_a_b_c @ M )
     => ( ( member5502040268208861279od_c_a @ ( produc5762801557034676134od_c_a @ Q @ ( produc3440865914000881661od_c_a @ X3 @ ( product_Pair_c_a @ Y @ Q3 ) ) ) @ ( transitions_a_b_c @ M ) )
       => ( ( after_a_b_c @ M @ Q @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) )
          = Q3 ) ) ) ).

% after_transition
thf(fact_343_after__transition,axiom,
    ! [M: fsm_op2445473550699801768tion_a,Q: option_a,X3: option_a,Y: option_a,Q3: option_a] :
      ( ( observ5325737701211358028tion_a @ M )
     => ( ( member7553362430500004246tion_a @ ( produc1279490705019198813tion_a @ Q @ ( produc4645961035427687802tion_a @ X3 @ ( produc9011544418120257559tion_a @ Y @ Q3 ) ) ) @ ( transi3979659241729338265tion_a @ M ) )
       => ( ( after_612238547627635419tion_a @ M @ Q @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) )
          = Q3 ) ) ) ).

% after_transition
thf(fact_344_after__transition,axiom,
    ! [M: fsm_op7083421644242023300tion_a,Q: option_a,X3: product_prod_b_c,Y: option_a,Q3: option_a] :
      ( ( observ1716698870131812264tion_a @ M )
     => ( ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q @ ( produc7403377568244983126tion_a @ X3 @ ( produc9011544418120257559tion_a @ Y @ Q3 ) ) ) @ ( transi3095157388973257333tion_a @ M ) )
       => ( ( after_2988595708946543287tion_a @ M @ Q @ ( cons_P4713136616185682745tion_a @ ( produc5520355756337774067tion_a @ X3 @ Y ) @ nil_Pr7469485397829879689tion_a ) )
          = Q3 ) ) ) ).

% after_transition
thf(fact_345_does__distinguish__correctness,axiom,
    ! [M: fsm_a_b_c,Q16: a,Q24: a,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member_a @ Q16 @ ( states_a_b_c @ M ) )
       => ( ( member_a @ Q24 @ ( states_a_b_c @ M ) )
         => ( ( does_d3309555387068894566_a_b_c @ M @ Q16 @ Q24 @ Io )
            = ( distinguishes_a_b_c @ M @ Q16 @ Q24 @ Io ) ) ) ) ) ).

% does_distinguish_correctness
thf(fact_346_split__cong,axiom,
    ! [Q: product_prod_b_c,F: b > c > option5121868808592388652tion_a,G: b > c > option5121868808592388652tion_a,P4: product_prod_b_c] :
      ( ! [X: b,Y2: c] :
          ( ( ( product_Pair_b_c @ X @ Y2 )
            = Q )
         => ( ( F @ X @ Y2 )
            = ( G @ X @ Y2 ) ) )
     => ( ( P4 = Q )
       => ( ( produc3057695370585535359tion_a @ F @ P4 )
          = ( produc3057695370585535359tion_a @ G @ Q ) ) ) ) ).

% split_cong
thf(fact_347_split__cong,axiom,
    ! [Q: produc3509355604313844263tion_a,F: option_a > option_a > option5121868808592388652tion_a,G: option_a > option_a > option5121868808592388652tion_a,P4: produc3509355604313844263tion_a] :
      ( ! [X: option_a,Y2: option_a] :
          ( ( ( produc9011544418120257559tion_a @ X @ Y2 )
            = Q )
         => ( ( F @ X @ Y2 )
            = ( G @ X @ Y2 ) ) )
     => ( ( P4 = Q )
       => ( ( produc6886125431942075136tion_a @ F @ P4 )
          = ( produc6886125431942075136tion_a @ G @ Q ) ) ) ) ).

% split_cong
thf(fact_348_sublists_Osimps_I1_J,axiom,
    ( ( sublis2289869149930848382tion_a @ nil_Pr596483954593762796tion_a )
    = ( cons_l4387309880990760226tion_a @ nil_Pr596483954593762796tion_a @ nil_li683225626544421234tion_a ) ) ).

% sublists.simps(1)
thf(fact_349_sublists_Osimps_I1_J,axiom,
    ( ( sublis8706766506341057792od_b_c @ nil_Product_prod_b_c )
    = ( cons_l342771267123639716od_b_c @ nil_Product_prod_b_c @ nil_li8071162985807626740od_b_c ) ) ).

% sublists.simps(1)
thf(fact_350_sublists_Osimps_I1_J,axiom,
    ( ( sublists_b @ nil_b )
    = ( cons_list_b @ nil_b @ nil_list_b ) ) ).

% sublists.simps(1)
thf(fact_351_sublists_Osimps_I1_J,axiom,
    ( ( sublists_c @ nil_c )
    = ( cons_list_c @ nil_c @ nil_list_c ) ) ).

% sublists.simps(1)
thf(fact_352_sublists_Osimps_I1_J,axiom,
    ( ( sublists_a @ nil_a )
    = ( cons_list_a @ nil_a @ nil_list_a ) ) ).

% sublists.simps(1)
thf(fact_353_Util_Osuffixes_Osimps_I1_J,axiom,
    ( ( suffix6577423449323756504tion_a @ nil_Pr596483954593762796tion_a )
    = ( cons_l4387309880990760226tion_a @ nil_Pr596483954593762796tion_a @ nil_li683225626544421234tion_a ) ) ).

% Util.suffixes.simps(1)
thf(fact_354_Util_Osuffixes_Osimps_I1_J,axiom,
    ( ( suffix2151784340763841114od_b_c @ nil_Product_prod_b_c )
    = ( cons_l342771267123639716od_b_c @ nil_Product_prod_b_c @ nil_li8071162985807626740od_b_c ) ) ).

% Util.suffixes.simps(1)
thf(fact_355_Util_Osuffixes_Osimps_I1_J,axiom,
    ( ( suffixes_b @ nil_b )
    = ( cons_list_b @ nil_b @ nil_list_b ) ) ).

% Util.suffixes.simps(1)
thf(fact_356_Util_Osuffixes_Osimps_I1_J,axiom,
    ( ( suffixes_c @ nil_c )
    = ( cons_list_c @ nil_c @ nil_list_c ) ) ).

% Util.suffixes.simps(1)
thf(fact_357_Util_Osuffixes_Osimps_I1_J,axiom,
    ( ( suffixes_a @ nil_a )
    = ( cons_list_a @ nil_a @ nil_list_a ) ) ).

% Util.suffixes.simps(1)
thf(fact_358_case__prodI,axiom,
    ! [F: b > c > $o,A: b,B: c] :
      ( ( F @ A @ B )
     => ( produc1873627588981547243_b_c_o @ F @ ( product_Pair_b_c @ A @ B ) ) ) ).

% case_prodI
thf(fact_359_case__prodI,axiom,
    ! [F: product_prod_b_c > produc3509355604313844263tion_a > $o,A: product_prod_b_c,B: produc3509355604313844263tion_a] :
      ( ( F @ A @ B )
     => ( produc6118554791394114925on_a_o @ F @ ( produc7403377568244983126tion_a @ A @ B ) ) ) ).

% case_prodI
thf(fact_360_case__prodI,axiom,
    ! [F: option_a > option_a > $o,A: option_a,B: option_a] :
      ( ( F @ A @ B )
     => ( produc7248784972643495020on_a_o @ F @ ( produc9011544418120257559tion_a @ A @ B ) ) ) ).

% case_prodI
thf(fact_361_case__prodI2,axiom,
    ! [P4: product_prod_b_c,C2: b > c > $o] :
      ( ! [A3: b,B3: c] :
          ( ( P4
            = ( product_Pair_b_c @ A3 @ B3 ) )
         => ( C2 @ A3 @ B3 ) )
     => ( produc1873627588981547243_b_c_o @ C2 @ P4 ) ) ).

% case_prodI2
thf(fact_362_case__prodI2,axiom,
    ! [P4: produc1359548802814378470tion_a,C2: product_prod_b_c > produc3509355604313844263tion_a > $o] :
      ( ! [A3: product_prod_b_c,B3: produc3509355604313844263tion_a] :
          ( ( P4
            = ( produc7403377568244983126tion_a @ A3 @ B3 ) )
         => ( C2 @ A3 @ B3 ) )
     => ( produc6118554791394114925on_a_o @ C2 @ P4 ) ) ).

% case_prodI2
thf(fact_363_case__prodI2,axiom,
    ! [P4: produc3509355604313844263tion_a,C2: option_a > option_a > $o] :
      ( ! [A3: option_a,B3: option_a] :
          ( ( P4
            = ( produc9011544418120257559tion_a @ A3 @ B3 ) )
         => ( C2 @ A3 @ B3 ) )
     => ( produc7248784972643495020on_a_o @ C2 @ P4 ) ) ).

% case_prodI2
thf(fact_364_mem__case__prodI,axiom,
    ! [Z3: a,C2: b > c > set_a,A: b,B: c] :
      ( ( member_a @ Z3 @ ( C2 @ A @ B ) )
     => ( member_a @ Z3 @ ( produc3958908706888076337_set_a @ C2 @ ( product_Pair_b_c @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_365_mem__case__prodI,axiom,
    ! [Z3: c,C2: b > c > set_c,A: b,B: c] :
      ( ( member_c @ Z3 @ ( C2 @ A @ B ) )
     => ( member_c @ Z3 @ ( produc3958908715494533939_set_c @ C2 @ ( product_Pair_b_c @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_366_mem__case__prodI,axiom,
    ! [Z3: b,C2: b > c > set_b,A: b,B: c] :
      ( ( member_b @ Z3 @ ( C2 @ A @ B ) )
     => ( member_b @ Z3 @ ( produc3958908711191305138_set_b @ C2 @ ( product_Pair_b_c @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_367_mem__case__prodI,axiom,
    ! [Z3: product_prod_b_c,C2: b > c > set_Product_prod_b_c,A: b,B: c] :
      ( ( member7862447941013992593od_b_c @ Z3 @ ( C2 @ A @ B ) )
     => ( member7862447941013992593od_b_c @ Z3 @ ( produc4740908828678249115od_b_c @ C2 @ ( product_Pair_b_c @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_368_mem__case__prodI,axiom,
    ! [Z3: a,C2: option_a > option_a > set_a,A: option_a,B: option_a] :
      ( ( member_a @ Z3 @ ( C2 @ A @ B ) )
     => ( member_a @ Z3 @ ( produc3311379780099416882_set_a @ C2 @ ( produc9011544418120257559tion_a @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_369_mem__case__prodI,axiom,
    ! [Z3: c,C2: option_a > option_a > set_c,A: option_a,B: option_a] :
      ( ( member_c @ Z3 @ ( C2 @ A @ B ) )
     => ( member_c @ Z3 @ ( produc3311379788705874484_set_c @ C2 @ ( produc9011544418120257559tion_a @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_370_mem__case__prodI,axiom,
    ! [Z3: b,C2: option_a > option_a > set_b,A: option_a,B: option_a] :
      ( ( member_b @ Z3 @ ( C2 @ A @ B ) )
     => ( member_b @ Z3 @ ( produc3311379784402645683_set_b @ C2 @ ( produc9011544418120257559tion_a @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_371_mem__case__prodI,axiom,
    ! [Z3: product_prod_b_c,C2: option_a > option_a > set_Product_prod_b_c,A: option_a,B: option_a] :
      ( ( member7862447941013992593od_b_c @ Z3 @ ( C2 @ A @ B ) )
     => ( member7862447941013992593od_b_c @ Z3 @ ( produc7626184649506457756od_b_c @ C2 @ ( produc9011544418120257559tion_a @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_372_mem__case__prodI,axiom,
    ! [Z3: a,C2: product_prod_b_c > produc3509355604313844263tion_a > set_a,A: product_prod_b_c,B: produc3509355604313844263tion_a] :
      ( ( member_a @ Z3 @ ( C2 @ A @ B ) )
     => ( member_a @ Z3 @ ( produc5556088563787644851_set_a @ C2 @ ( produc7403377568244983126tion_a @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_373_mem__case__prodI,axiom,
    ! [Z3: c,C2: product_prod_b_c > produc3509355604313844263tion_a > set_c,A: product_prod_b_c,B: produc3509355604313844263tion_a] :
      ( ( member_c @ Z3 @ ( C2 @ A @ B ) )
     => ( member_c @ Z3 @ ( produc5556088572394102453_set_c @ C2 @ ( produc7403377568244983126tion_a @ A @ B ) ) ) ) ).

% mem_case_prodI
thf(fact_374_mem__case__prodI2,axiom,
    ! [P4: product_prod_b_c,Z3: a,C2: b > c > set_a] :
      ( ! [A3: b,B3: c] :
          ( ( P4
            = ( product_Pair_b_c @ A3 @ B3 ) )
         => ( member_a @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member_a @ Z3 @ ( produc3958908706888076337_set_a @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_375_mem__case__prodI2,axiom,
    ! [P4: product_prod_b_c,Z3: c,C2: b > c > set_c] :
      ( ! [A3: b,B3: c] :
          ( ( P4
            = ( product_Pair_b_c @ A3 @ B3 ) )
         => ( member_c @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member_c @ Z3 @ ( produc3958908715494533939_set_c @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_376_mem__case__prodI2,axiom,
    ! [P4: product_prod_b_c,Z3: b,C2: b > c > set_b] :
      ( ! [A3: b,B3: c] :
          ( ( P4
            = ( product_Pair_b_c @ A3 @ B3 ) )
         => ( member_b @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member_b @ Z3 @ ( produc3958908711191305138_set_b @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_377_mem__case__prodI2,axiom,
    ! [P4: product_prod_b_c,Z3: product_prod_b_c,C2: b > c > set_Product_prod_b_c] :
      ( ! [A3: b,B3: c] :
          ( ( P4
            = ( product_Pair_b_c @ A3 @ B3 ) )
         => ( member7862447941013992593od_b_c @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member7862447941013992593od_b_c @ Z3 @ ( produc4740908828678249115od_b_c @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_378_mem__case__prodI2,axiom,
    ! [P4: produc3509355604313844263tion_a,Z3: a,C2: option_a > option_a > set_a] :
      ( ! [A3: option_a,B3: option_a] :
          ( ( P4
            = ( produc9011544418120257559tion_a @ A3 @ B3 ) )
         => ( member_a @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member_a @ Z3 @ ( produc3311379780099416882_set_a @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_379_mem__case__prodI2,axiom,
    ! [P4: produc3509355604313844263tion_a,Z3: c,C2: option_a > option_a > set_c] :
      ( ! [A3: option_a,B3: option_a] :
          ( ( P4
            = ( produc9011544418120257559tion_a @ A3 @ B3 ) )
         => ( member_c @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member_c @ Z3 @ ( produc3311379788705874484_set_c @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_380_mem__case__prodI2,axiom,
    ! [P4: produc3509355604313844263tion_a,Z3: b,C2: option_a > option_a > set_b] :
      ( ! [A3: option_a,B3: option_a] :
          ( ( P4
            = ( produc9011544418120257559tion_a @ A3 @ B3 ) )
         => ( member_b @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member_b @ Z3 @ ( produc3311379784402645683_set_b @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_381_mem__case__prodI2,axiom,
    ! [P4: produc3509355604313844263tion_a,Z3: product_prod_b_c,C2: option_a > option_a > set_Product_prod_b_c] :
      ( ! [A3: option_a,B3: option_a] :
          ( ( P4
            = ( produc9011544418120257559tion_a @ A3 @ B3 ) )
         => ( member7862447941013992593od_b_c @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member7862447941013992593od_b_c @ Z3 @ ( produc7626184649506457756od_b_c @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_382_mem__case__prodI2,axiom,
    ! [P4: produc1359548802814378470tion_a,Z3: a,C2: product_prod_b_c > produc3509355604313844263tion_a > set_a] :
      ( ! [A3: product_prod_b_c,B3: produc3509355604313844263tion_a] :
          ( ( P4
            = ( produc7403377568244983126tion_a @ A3 @ B3 ) )
         => ( member_a @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member_a @ Z3 @ ( produc5556088563787644851_set_a @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_383_mem__case__prodI2,axiom,
    ! [P4: produc1359548802814378470tion_a,Z3: c,C2: product_prod_b_c > produc3509355604313844263tion_a > set_c] :
      ( ! [A3: product_prod_b_c,B3: produc3509355604313844263tion_a] :
          ( ( P4
            = ( produc7403377568244983126tion_a @ A3 @ B3 ) )
         => ( member_c @ Z3 @ ( C2 @ A3 @ B3 ) ) )
     => ( member_c @ Z3 @ ( produc5556088572394102453_set_c @ C2 @ P4 ) ) ) ).

% mem_case_prodI2
thf(fact_384_diff__Suc__Suc,axiom,
    ! [M4: nat,N: nat] :
      ( ( minus_minus_nat @ ( suc @ M4 ) @ ( suc @ N ) )
      = ( minus_minus_nat @ M4 @ N ) ) ).

% diff_Suc_Suc
thf(fact_385_Suc__diff__diff,axiom,
    ! [M4: nat,N: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ ( suc @ M4 ) @ N ) @ ( suc @ K ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M4 @ N ) @ K ) ) ).

% Suc_diff_diff
thf(fact_386_diff__Suc__1,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ ( suc @ N ) @ one_one_nat )
      = N ) ).

% diff_Suc_1
thf(fact_387_diff__Suc__eq__diff__pred,axiom,
    ! [M4: nat,N: nat] :
      ( ( minus_minus_nat @ M4 @ ( suc @ N ) )
      = ( minus_minus_nat @ ( minus_minus_nat @ M4 @ one_one_nat ) @ N ) ) ).

% diff_Suc_eq_diff_pred
thf(fact_388_diff__commute,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ I @ J ) @ K )
      = ( minus_minus_nat @ ( minus_minus_nat @ I @ K ) @ J ) ) ).

% diff_commute
thf(fact_389_mem__case__prodE,axiom,
    ! [Z3: a,C2: b > c > set_a,P4: product_prod_b_c] :
      ( ( member_a @ Z3 @ ( produc3958908706888076337_set_a @ C2 @ P4 ) )
     => ~ ! [X: b,Y2: c] :
            ( ( P4
              = ( product_Pair_b_c @ X @ Y2 ) )
           => ~ ( member_a @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_390_mem__case__prodE,axiom,
    ! [Z3: c,C2: b > c > set_c,P4: product_prod_b_c] :
      ( ( member_c @ Z3 @ ( produc3958908715494533939_set_c @ C2 @ P4 ) )
     => ~ ! [X: b,Y2: c] :
            ( ( P4
              = ( product_Pair_b_c @ X @ Y2 ) )
           => ~ ( member_c @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_391_mem__case__prodE,axiom,
    ! [Z3: b,C2: b > c > set_b,P4: product_prod_b_c] :
      ( ( member_b @ Z3 @ ( produc3958908711191305138_set_b @ C2 @ P4 ) )
     => ~ ! [X: b,Y2: c] :
            ( ( P4
              = ( product_Pair_b_c @ X @ Y2 ) )
           => ~ ( member_b @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_392_mem__case__prodE,axiom,
    ! [Z3: product_prod_b_c,C2: b > c > set_Product_prod_b_c,P4: product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ Z3 @ ( produc4740908828678249115od_b_c @ C2 @ P4 ) )
     => ~ ! [X: b,Y2: c] :
            ( ( P4
              = ( product_Pair_b_c @ X @ Y2 ) )
           => ~ ( member7862447941013992593od_b_c @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_393_mem__case__prodE,axiom,
    ! [Z3: a,C2: option_a > option_a > set_a,P4: produc3509355604313844263tion_a] :
      ( ( member_a @ Z3 @ ( produc3311379780099416882_set_a @ C2 @ P4 ) )
     => ~ ! [X: option_a,Y2: option_a] :
            ( ( P4
              = ( produc9011544418120257559tion_a @ X @ Y2 ) )
           => ~ ( member_a @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_394_mem__case__prodE,axiom,
    ! [Z3: c,C2: option_a > option_a > set_c,P4: produc3509355604313844263tion_a] :
      ( ( member_c @ Z3 @ ( produc3311379788705874484_set_c @ C2 @ P4 ) )
     => ~ ! [X: option_a,Y2: option_a] :
            ( ( P4
              = ( produc9011544418120257559tion_a @ X @ Y2 ) )
           => ~ ( member_c @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_395_mem__case__prodE,axiom,
    ! [Z3: b,C2: option_a > option_a > set_b,P4: produc3509355604313844263tion_a] :
      ( ( member_b @ Z3 @ ( produc3311379784402645683_set_b @ C2 @ P4 ) )
     => ~ ! [X: option_a,Y2: option_a] :
            ( ( P4
              = ( produc9011544418120257559tion_a @ X @ Y2 ) )
           => ~ ( member_b @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_396_mem__case__prodE,axiom,
    ! [Z3: product_prod_b_c,C2: option_a > option_a > set_Product_prod_b_c,P4: produc3509355604313844263tion_a] :
      ( ( member7862447941013992593od_b_c @ Z3 @ ( produc7626184649506457756od_b_c @ C2 @ P4 ) )
     => ~ ! [X: option_a,Y2: option_a] :
            ( ( P4
              = ( produc9011544418120257559tion_a @ X @ Y2 ) )
           => ~ ( member7862447941013992593od_b_c @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_397_mem__case__prodE,axiom,
    ! [Z3: a,C2: product_prod_b_c > produc3509355604313844263tion_a > set_a,P4: produc1359548802814378470tion_a] :
      ( ( member_a @ Z3 @ ( produc5556088563787644851_set_a @ C2 @ P4 ) )
     => ~ ! [X: product_prod_b_c,Y2: produc3509355604313844263tion_a] :
            ( ( P4
              = ( produc7403377568244983126tion_a @ X @ Y2 ) )
           => ~ ( member_a @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_398_mem__case__prodE,axiom,
    ! [Z3: c,C2: product_prod_b_c > produc3509355604313844263tion_a > set_c,P4: produc1359548802814378470tion_a] :
      ( ( member_c @ Z3 @ ( produc5556088572394102453_set_c @ C2 @ P4 ) )
     => ~ ! [X: product_prod_b_c,Y2: produc3509355604313844263tion_a] :
            ( ( P4
              = ( produc7403377568244983126tion_a @ X @ Y2 ) )
           => ~ ( member_c @ Z3 @ ( C2 @ X @ Y2 ) ) ) ) ).

% mem_case_prodE
thf(fact_399_zero__induct__lemma,axiom,
    ! [P: nat > $o,K: nat,I: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ ( minus_minus_nat @ K @ I ) ) ) ) ).

% zero_induct_lemma
thf(fact_400_case__prodD,axiom,
    ! [F: b > c > $o,A: b,B: c] :
      ( ( produc1873627588981547243_b_c_o @ F @ ( product_Pair_b_c @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_401_case__prodD,axiom,
    ! [F: product_prod_b_c > produc3509355604313844263tion_a > $o,A: product_prod_b_c,B: produc3509355604313844263tion_a] :
      ( ( produc6118554791394114925on_a_o @ F @ ( produc7403377568244983126tion_a @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_402_case__prodD,axiom,
    ! [F: option_a > option_a > $o,A: option_a,B: option_a] :
      ( ( produc7248784972643495020on_a_o @ F @ ( produc9011544418120257559tion_a @ A @ B ) )
     => ( F @ A @ B ) ) ).

% case_prodD
thf(fact_403_case__prodE,axiom,
    ! [C2: b > c > $o,P4: product_prod_b_c] :
      ( ( produc1873627588981547243_b_c_o @ C2 @ P4 )
     => ~ ! [X: b,Y2: c] :
            ( ( P4
              = ( product_Pair_b_c @ X @ Y2 ) )
           => ~ ( C2 @ X @ Y2 ) ) ) ).

% case_prodE
thf(fact_404_case__prodE,axiom,
    ! [C2: product_prod_b_c > produc3509355604313844263tion_a > $o,P4: produc1359548802814378470tion_a] :
      ( ( produc6118554791394114925on_a_o @ C2 @ P4 )
     => ~ ! [X: product_prod_b_c,Y2: produc3509355604313844263tion_a] :
            ( ( P4
              = ( produc7403377568244983126tion_a @ X @ Y2 ) )
           => ~ ( C2 @ X @ Y2 ) ) ) ).

% case_prodE
thf(fact_405_case__prodE,axiom,
    ! [C2: option_a > option_a > $o,P4: produc3509355604313844263tion_a] :
      ( ( produc7248784972643495020on_a_o @ C2 @ P4 )
     => ~ ! [X: option_a,Y2: option_a] :
            ( ( P4
              = ( produc9011544418120257559tion_a @ X @ Y2 ) )
           => ~ ( C2 @ X @ Y2 ) ) ) ).

% case_prodE
thf(fact_406_option_Odisc__eq__case_I1_J,axiom,
    ! [Option: option_a] :
      ( ( Option = none_a )
      = ( case_option_o_a @ $true
        @ ^ [Uu3: a] : $false
        @ Option ) ) ).

% option.disc_eq_case(1)
thf(fact_407_option_Odisc__eq__case_I1_J,axiom,
    ! [Option: option5121868808592388652tion_a] :
      ( ( Option = none_P2271573532998059335tion_a )
      = ( case_o2405337025859624153tion_a @ $true
        @ ^ [Uu3: produc1359548802814378470tion_a] : $false
        @ Option ) ) ).

% option.disc_eq_case(1)
thf(fact_408_option_Odisc__eq__case_I2_J,axiom,
    ! [Option: option_a] :
      ( ( Option != none_a )
      = ( case_option_o_a @ $false
        @ ^ [Uu3: a] : $true
        @ Option ) ) ).

% option.disc_eq_case(2)
thf(fact_409_option_Odisc__eq__case_I2_J,axiom,
    ! [Option: option5121868808592388652tion_a] :
      ( ( Option != none_P2271573532998059335tion_a )
      = ( case_o2405337025859624153tion_a @ $false
        @ ^ [Uu3: produc1359548802814378470tion_a] : $true
        @ Option ) ) ).

% option.disc_eq_case(2)
thf(fact_410_case__optionE,axiom,
    ! [P: $o,Q7: a > $o,X3: option_a] :
      ( ( case_option_o_a @ P @ Q7 @ X3 )
     => ( ( ( X3 = none_a )
         => ~ P )
       => ~ ! [Y2: a] :
              ( ( X3
                = ( some_a @ Y2 ) )
             => ~ ( Q7 @ Y2 ) ) ) ) ).

% case_optionE
thf(fact_411_case__optionE,axiom,
    ! [P: $o,Q7: produc1359548802814378470tion_a > $o,X3: option5121868808592388652tion_a] :
      ( ( case_o2405337025859624153tion_a @ P @ Q7 @ X3 )
     => ( ( ( X3 = none_P2271573532998059335tion_a )
         => ~ P )
       => ~ ! [Y2: produc1359548802814378470tion_a] :
              ( ( X3
                = ( some_P2468934990214623435tion_a @ Y2 ) )
             => ~ ( Q7 @ Y2 ) ) ) ) ).

% case_optionE
thf(fact_412_map__filter__simps_I1_J,axiom,
    ! [F: product_prod_b_c > option5121868808592388652tion_a,X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( map_fi7170063521196241608tion_a @ F @ ( cons_P4529483553340347422od_b_c @ X3 @ Xs ) )
      = ( case_o8606441145061933317tion_a @ ( map_fi7170063521196241608tion_a @ F @ Xs )
        @ ^ [Y3: produc1359548802814378470tion_a] : ( cons_P7206946803070396828tion_a @ Y3 @ ( map_fi7170063521196241608tion_a @ F @ Xs ) )
        @ ( F @ X3 ) ) ) ).

% map_filter_simps(1)
thf(fact_413_map__filter__simps_I1_J,axiom,
    ! [F: produc1359548802814378470tion_a > option5121868808592388652tion_a,X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( map_fi5918281417598980042tion_a @ F @ ( cons_P7206946803070396828tion_a @ X3 @ Xs ) )
      = ( case_o8606441145061933317tion_a @ ( map_fi5918281417598980042tion_a @ F @ Xs )
        @ ^ [Y3: produc1359548802814378470tion_a] : ( cons_P7206946803070396828tion_a @ Y3 @ ( map_fi5918281417598980042tion_a @ F @ Xs ) )
        @ ( F @ X3 ) ) ) ).

% map_filter_simps(1)
thf(fact_414_ofsm__table__case__helper__neg,axiom,
    ! [M: fsm_a_b_c,Q3: a,X3: b,Y: c,F: a > set_a,K: nat,Q: a] :
      ( ( ~ ( case_option_o_a
            @ ( ( h_obs_a_b_c @ M @ Q3 @ X3 @ Y )
              = none_a )
            @ ^ [QT: a] :
                ( case_option_o_a @ $false
                @ ^ [QT2: a] :
                    ( ( ofsm_table_a_b_c @ M @ F @ K @ QT )
                    = ( ofsm_table_a_b_c @ M @ F @ K @ QT2 ) )
                @ ( h_obs_a_b_c @ M @ Q3 @ X3 @ Y ) )
            @ ( h_obs_a_b_c @ M @ Q @ X3 @ Y ) ) )
      = ( ? [QT: a] :
            ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
              = ( some_a @ QT ) )
            & ? [QT2: a] :
                ( ( ( h_obs_a_b_c @ M @ Q3 @ X3 @ Y )
                  = ( some_a @ QT2 ) )
                & ( ( ofsm_table_a_b_c @ M @ F @ K @ QT )
                 != ( ofsm_table_a_b_c @ M @ F @ K @ QT2 ) ) ) )
        | ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
            = none_a )
          = ( ( h_obs_a_b_c @ M @ Q3 @ X3 @ Y )
           != none_a ) ) ) ) ).

% ofsm_table_case_helper_neg
thf(fact_415_ofsm__table__case__helper,axiom,
    ! [M: fsm_a_b_c,Q3: a,X3: b,Y: c,F: a > set_a,K: nat,Q: a] :
      ( ( case_option_o_a
        @ ( ( h_obs_a_b_c @ M @ Q3 @ X3 @ Y )
          = none_a )
        @ ^ [QT: a] :
            ( case_option_o_a @ $false
            @ ^ [QT2: a] :
                ( ( ofsm_table_a_b_c @ M @ F @ K @ QT )
                = ( ofsm_table_a_b_c @ M @ F @ K @ QT2 ) )
            @ ( h_obs_a_b_c @ M @ Q3 @ X3 @ Y ) )
        @ ( h_obs_a_b_c @ M @ Q @ X3 @ Y ) )
      = ( ? [QT: a] :
            ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
              = ( some_a @ QT ) )
            & ? [QT2: a] :
                ( ( ( h_obs_a_b_c @ M @ Q3 @ X3 @ Y )
                  = ( some_a @ QT2 ) )
                & ( ( ofsm_table_a_b_c @ M @ F @ K @ QT )
                  = ( ofsm_table_a_b_c @ M @ F @ K @ QT2 ) ) ) )
        | ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
            = none_a )
          & ( ( h_obs_a_b_c @ M @ Q3 @ X3 @ Y )
            = none_a ) ) ) ) ).

% ofsm_table_case_helper
thf(fact_416_after__h__obs,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Q3: a] :
      ( ( observable_a_b_c @ M )
     => ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
          = ( some_a @ Q3 ) )
       => ( ( after_a_b_c @ M @ Q @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) )
          = Q3 ) ) ) ).

% after_h_obs
thf(fact_417_after__h__obs,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,Q: a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q3: a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( ( h_obs_502279454451148624tion_a @ M @ Q @ X3 @ Y )
          = ( some_a @ Q3 ) )
       => ( ( after_6104971424356839764tion_a @ M @ Q @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) )
          = Q3 ) ) ) ).

% after_h_obs
thf(fact_418_after__h__obs,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,Q: a,X3: option_a,Y: option_a,Q3: a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( ( h_obs_2762009199847384593tion_a @ M @ Q @ X3 @ Y )
          = ( some_a @ Q3 ) )
       => ( ( after_4826890630637713429tion_a @ M @ Q @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) )
          = Q3 ) ) ) ).

% after_h_obs
thf(fact_419_after__h__obs,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,Q: produc1359548802814378470tion_a,X3: b,Y: c,Q3: produc1359548802814378470tion_a] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ Q @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q3 ) )
       => ( ( after_4736860933871809598_a_b_c @ M @ Q @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) )
          = Q3 ) ) ) ).

% after_h_obs
thf(fact_420_after__h__obs,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,Q: produc1359548802814378470tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q3: produc1359548802814378470tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( ( h_obs_2034362272866080824tion_a @ M @ Q @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q3 ) )
       => ( ( after_4666548563309070908tion_a @ M @ Q @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) )
          = Q3 ) ) ) ).

% after_h_obs
thf(fact_421_after__h__obs,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,Q: produc1359548802814378470tion_a,X3: option_a,Y: option_a,Q3: produc1359548802814378470tion_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( ( h_obs_5157205410614601465tion_a @ M @ Q @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q3 ) )
       => ( ( after_6806106828575809789tion_a @ M @ Q @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) )
          = Q3 ) ) ) ).

% after_h_obs
thf(fact_422_extract__Cons__code,axiom,
    ! [P: produc1359548802814378470tion_a > $o,X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( ( P @ X3 )
       => ( ( extrac3690066604882443758tion_a @ P @ ( cons_P7206946803070396828tion_a @ X3 @ Xs ) )
          = ( some_P2694159108044368845tion_a @ ( produc1528220918894490456tion_a @ nil_Pr596483954593762796tion_a @ ( produc8574412006938266909tion_a @ X3 @ Xs ) ) ) ) )
      & ( ~ ( P @ X3 )
       => ( ( extrac3690066604882443758tion_a @ P @ ( cons_P7206946803070396828tion_a @ X3 @ Xs ) )
          = ( case_o848556868168149701tion_a @ none_P2980980652070050889tion_a
            @ ( produc1208239796184181889tion_a
              @ ^ [Ys: list_P7785822056432494700tion_a] :
                  ( produc6995664025456297084tion_a
                  @ ^ [Y3: produc1359548802814378470tion_a,Zs: list_P7785822056432494700tion_a] : ( some_P2694159108044368845tion_a @ ( produc1528220918894490456tion_a @ ( cons_P7206946803070396828tion_a @ X3 @ Ys ) @ ( produc8574412006938266909tion_a @ Y3 @ Zs ) ) ) ) )
            @ ( extrac3690066604882443758tion_a @ P @ Xs ) ) ) ) ) ).

% extract_Cons_code
thf(fact_423_extract__Cons__code,axiom,
    ! [P: product_prod_b_c > $o,X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( ( P @ X3 )
       => ( ( extrac2790361661052662384od_b_c @ P @ ( cons_P4529483553340347422od_b_c @ X3 @ Xs ) )
          = ( some_P278523132111576139od_b_c @ ( produc1861375773765947862od_b_c @ nil_Product_prod_b_c @ ( produc1467100693395308445od_b_c @ X3 @ Xs ) ) ) ) )
      & ( ~ ( P @ X3 )
       => ( ( extrac2790361661052662384od_b_c @ P @ ( cons_P4529483553340347422od_b_c @ X3 @ Xs ) )
          = ( case_o3897382779013339973od_b_c @ none_P8002138689083699399od_b_c
            @ ( produc3875579526527411969od_b_c
              @ ^ [Ys: list_P903359562653991662od_b_c] :
                  ( produc2746585896811386746od_b_c
                  @ ^ [Y3: product_prod_b_c,Zs: list_P903359562653991662od_b_c] : ( some_P278523132111576139od_b_c @ ( produc1861375773765947862od_b_c @ ( cons_P4529483553340347422od_b_c @ X3 @ Ys ) @ ( produc1467100693395308445od_b_c @ Y3 @ Zs ) ) ) ) )
            @ ( extrac2790361661052662384od_b_c @ P @ Xs ) ) ) ) ) ).

% extract_Cons_code
thf(fact_424_extract__Cons__code,axiom,
    ! [P: b > $o,X3: b,Xs: list_b] :
      ( ( ( P @ X3 )
       => ( ( extract_b @ P @ ( cons_b @ X3 @ Xs ) )
          = ( some_P7780201447483665076list_b @ ( produc5759544327908914751list_b @ nil_b @ ( produc8158425114075849053list_b @ X3 @ Xs ) ) ) ) )
      & ( ~ ( P @ X3 )
       => ( ( extract_b @ P @ ( cons_b @ X3 @ Xs ) )
          = ( case_o2759806506104524549list_b @ none_P8319540550477353776list_b
            @ ( produc6010313031631800897list_b
              @ ^ [Ys: list_b] :
                  ( produc3508384177818694563list_b
                  @ ^ [Y3: b,Zs: list_b] : ( some_P7780201447483665076list_b @ ( produc5759544327908914751list_b @ ( cons_b @ X3 @ Ys ) @ ( produc8158425114075849053list_b @ Y3 @ Zs ) ) ) ) )
            @ ( extract_b @ P @ Xs ) ) ) ) ) ).

% extract_Cons_code
thf(fact_425_extract__Cons__code,axiom,
    ! [P: c > $o,X3: c,Xs: list_c] :
      ( ( ( P @ X3 )
       => ( ( extract_c @ P @ ( cons_c @ X3 @ Xs ) )
          = ( some_P982376114519543987list_c @ ( produc8314379991811161150list_c @ nil_c @ ( produc423015118819100573list_c @ X3 @ Xs ) ) ) ) )
      & ( ~ ( P @ X3 )
       => ( ( extract_c @ P @ ( cons_c @ X3 @ Xs ) )
          = ( case_o3781300154408780101list_c @ none_P1521715217513232687list_c
            @ ( produc7136784497060177921list_c
              @ ^ [Ys: list_c] :
                  ( produc5908304907396355042list_c
                  @ ^ [Y3: c,Zs: list_c] : ( some_P982376114519543987list_c @ ( produc8314379991811161150list_c @ ( cons_c @ X3 @ Ys ) @ ( produc423015118819100573list_c @ Y3 @ Zs ) ) ) ) )
            @ ( extract_c @ P @ Xs ) ) ) ) ) ).

% extract_Cons_code
thf(fact_426_extract__Cons__code,axiom,
    ! [P: a > $o,X3: a,Xs: list_a] :
      ( ( ( P @ X3 )
       => ( ( extract_a @ P @ ( cons_a @ X3 @ Xs ) )
          = ( some_P5354654743593010357list_a @ ( produc3204708664006668352list_a @ nil_a @ ( produc6670463072477821725list_a @ X3 @ Xs ) ) ) ) )
      & ( ~ ( P @ X3 )
       => ( ( extract_a @ P @ ( cons_a @ X3 @ Xs ) )
          = ( case_o1738312857800268997list_a @ none_P5893993846586699057list_a
            @ ( produc4883841566203423873list_a
              @ ^ [Ys: list_a] :
                  ( produc1108463448241034084list_a
                  @ ^ [Y3: a,Zs: list_a] : ( some_P5354654743593010357list_a @ ( produc3204708664006668352list_a @ ( cons_a @ X3 @ Ys ) @ ( produc6670463072477821725list_a @ Y3 @ Zs ) ) ) ) )
            @ ( extract_a @ P @ Xs ) ) ) ) ) ).

% extract_Cons_code
thf(fact_427_h__from_Oelims,axiom,
    ! [X3: fsm_op7083421644242023300tion_a,Xa: option_a,Y: set_Pr165121870232099142tion_a] :
      ( ( ( h_from6817859510763986177tion_a @ X3 @ Xa )
        = Y )
     => ( Y
        = ( collec5181485912584638289tion_a
          @ ( produc6118554791394114925on_a_o
            @ ^ [X5: product_prod_b_c] :
                ( produc7248784972643495020on_a_o
                @ ^ [Y3: option_a,Q6: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Xa @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ X3 ) ) ) ) ) ) ) ).

% h_from.elims
thf(fact_428_h__from_Osimps,axiom,
    ( h_from6817859510763986177tion_a
    = ( ^ [M3: fsm_op7083421644242023300tion_a,Q5: option_a] :
          ( collec5181485912584638289tion_a
          @ ( produc6118554791394114925on_a_o
            @ ^ [X5: product_prod_b_c] :
                ( produc7248784972643495020on_a_o
                @ ^ [Y3: option_a,Q6: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q5 @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ M3 ) ) ) ) ) ) ) ).

% h_from.simps
thf(fact_429_maximal__prefix__in__language_Oelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c,Y: list_P903359562653991662od_b_c] :
      ( ( ( maxima1559550560783484624_a_b_c @ X3 @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = nil_Product_prod_b_c )
         => ( Y != nil_Product_prod_b_c ) )
       => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
              ( ( Xb
                = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
             => ( Y
               != ( case_o7419520253229056539_b_c_a @ nil_Product_prod_b_c
                  @ ^ [Q6: a] : ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ ( maxima1559550560783484624_a_b_c @ X3 @ Q6 @ Io2 ) )
                  @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) ) ) ) ) ).

% maximal_prefix_in_language.elims
thf(fact_430_maximal__prefix__in__language_Osimps_I2_J,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Io: list_P903359562653991662od_b_c] :
      ( ( maxima1559550560783484624_a_b_c @ M @ Q @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Io ) )
      = ( case_o7419520253229056539_b_c_a @ nil_Product_prod_b_c
        @ ^ [Q6: a] : ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ ( maxima1559550560783484624_a_b_c @ M @ Q6 @ Io ) )
        @ ( h_obs_a_b_c @ M @ Q @ X3 @ Y ) ) ) ).

% maximal_prefix_in_language.simps(2)
thf(fact_431_h__from_Opelims,axiom,
    ! [X3: fsm_op7083421644242023300tion_a,Xa: option_a,Y: set_Pr165121870232099142tion_a] :
      ( ( ( h_from6817859510763986177tion_a @ X3 @ Xa )
        = Y )
     => ( ( accp_P8749490156236764144tion_a @ h_from7910918433100979012tion_a @ ( produc7738723614447551959tion_a @ X3 @ Xa ) )
       => ~ ( ( Y
              = ( collec5181485912584638289tion_a
                @ ( produc6118554791394114925on_a_o
                  @ ^ [X5: product_prod_b_c] :
                      ( produc7248784972643495020on_a_o
                      @ ^ [Y3: option_a,Q6: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Xa @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ X3 ) ) ) ) ) )
           => ~ ( accp_P8749490156236764144tion_a @ h_from7910918433100979012tion_a @ ( produc7738723614447551959tion_a @ X3 @ Xa ) ) ) ) ) ).

% h_from.pelims
thf(fact_432_extract__Nil__code,axiom,
    ! [P: produc1359548802814378470tion_a > $o] :
      ( ( extrac3690066604882443758tion_a @ P @ nil_Pr596483954593762796tion_a )
      = none_P2980980652070050889tion_a ) ).

% extract_Nil_code
thf(fact_433_extract__Nil__code,axiom,
    ! [P: product_prod_b_c > $o] :
      ( ( extrac2790361661052662384od_b_c @ P @ nil_Product_prod_b_c )
      = none_P8002138689083699399od_b_c ) ).

% extract_Nil_code
thf(fact_434_extract__Nil__code,axiom,
    ! [P: b > $o] :
      ( ( extract_b @ P @ nil_b )
      = none_P8319540550477353776list_b ) ).

% extract_Nil_code
thf(fact_435_extract__Nil__code,axiom,
    ! [P: c > $o] :
      ( ( extract_c @ P @ nil_c )
      = none_P1521715217513232687list_c ) ).

% extract_Nil_code
thf(fact_436_extract__Nil__code,axiom,
    ! [P: a > $o] :
      ( ( extract_a @ P @ nil_a )
      = none_P5893993846586699057list_a ) ).

% extract_Nil_code
thf(fact_437_extract__None__iff,axiom,
    ! [P: produc1359548802814378470tion_a > $o,Xs: list_P7785822056432494700tion_a] :
      ( ( ( extrac3690066604882443758tion_a @ P @ Xs )
        = none_P2980980652070050889tion_a )
      = ( ~ ? [X5: produc1359548802814378470tion_a] :
              ( ( member5139186223151194895tion_a @ X5 @ ( set_Pr150857188848084347tion_a @ Xs ) )
              & ( P @ X5 ) ) ) ) ).

% extract_None_iff
thf(fact_438_extract__None__iff,axiom,
    ! [P: product_prod_b_c > $o,Xs: list_P903359562653991662od_b_c] :
      ( ( ( extrac2790361661052662384od_b_c @ P @ Xs )
        = none_P8002138689083699399od_b_c )
      = ( ~ ? [X5: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ X5 @ ( set_Product_prod_b_c2 @ Xs ) )
              & ( P @ X5 ) ) ) ) ).

% extract_None_iff
thf(fact_439_extract__None__iff,axiom,
    ! [P: b > $o,Xs: list_b] :
      ( ( ( extract_b @ P @ Xs )
        = none_P8319540550477353776list_b )
      = ( ~ ? [X5: b] :
              ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
              & ( P @ X5 ) ) ) ) ).

% extract_None_iff
thf(fact_440_extract__None__iff,axiom,
    ! [P: c > $o,Xs: list_c] :
      ( ( ( extract_c @ P @ Xs )
        = none_P1521715217513232687list_c )
      = ( ~ ? [X5: c] :
              ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
              & ( P @ X5 ) ) ) ) ).

% extract_None_iff
thf(fact_441_extract__None__iff,axiom,
    ! [P: a > $o,Xs: list_a] :
      ( ( ( extract_a @ P @ Xs )
        = none_P5893993846586699057list_a )
      = ( ~ ? [X5: a] :
              ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
              & ( P @ X5 ) ) ) ) ).

% extract_None_iff
thf(fact_442_one__reorient,axiom,
    ! [X3: nat] :
      ( ( one_one_nat = X3 )
      = ( X3 = one_one_nat ) ) ).

% one_reorient
thf(fact_443_diff__right__commute,axiom,
    ! [A: nat,C2: nat,B: nat] :
      ( ( minus_minus_nat @ ( minus_minus_nat @ A @ C2 ) @ B )
      = ( minus_minus_nat @ ( minus_minus_nat @ A @ B ) @ C2 ) ) ).

% diff_right_commute
thf(fact_444_maximal__prefix__in__language_Opelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c,Y: list_P903359562653991662od_b_c] :
      ( ( ( maxima1559550560783484624_a_b_c @ X3 @ Xa @ Xb )
        = Y )
     => ( ( accp_P4000836841735168996od_b_c @ maxima8135688396739918515_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Product_prod_b_c )
           => ( ( Y = nil_Product_prod_b_c )
             => ~ ( accp_P4000836841735168996od_b_c @ maxima8135688396739918515_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ nil_Product_prod_b_c ) ) ) ) )
         => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
                ( ( Xb
                  = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
               => ( ( Y
                    = ( case_o7419520253229056539_b_c_a @ nil_Product_prod_b_c
                      @ ^ [Q6: a] : ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ ( maxima1559550560783484624_a_b_c @ X3 @ Q6 @ Io2 ) )
                      @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) )
                 => ~ ( accp_P4000836841735168996od_b_c @ maxima8135688396739918515_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) ) ) ) ) ) ) ) ) ).

% maximal_prefix_in_language.pelims
thf(fact_445_disjE__realizer2,axiom,
    ! [P: $o,Q7: a > $o,X3: option_a,R: option5121868808592388652tion_a > $o,F: option5121868808592388652tion_a,G: a > option5121868808592388652tion_a] :
      ( ( case_option_o_a @ P @ Q7 @ X3 )
     => ( ( P
         => ( R @ F ) )
       => ( ! [Q4: a] :
              ( ( Q7 @ Q4 )
             => ( R @ ( G @ Q4 ) ) )
         => ( R @ ( case_o8532513079010850397on_a_a @ F @ G @ X3 ) ) ) ) ) ).

% disjE_realizer2
thf(fact_446_h__simps,axiom,
    ! [M: fsm_op7083421644242023300tion_a,Q: option_a,X3: product_prod_b_c] :
      ( ( h_opti6733590478887504523tion_a @ M @ ( produc7234324658902287035od_b_c @ Q @ X3 ) )
      = ( collec4135126896892755346tion_a
        @ ( produc7248784972643495020on_a_o
          @ ^ [Y3: option_a,Q6: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q @ ( produc7403377568244983126tion_a @ X3 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ M ) ) ) ) ) ).

% h_simps
thf(fact_447_h__simps,axiom,
    ! [M: fsm_op2445473550699801768tion_a,Q: option_a,X3: option_a] :
      ( ( h_opti4401739234194944175tion_a @ M @ ( produc9011544418120257559tion_a @ Q @ X3 ) )
      = ( collec4135126896892755346tion_a
        @ ( produc7248784972643495020on_a_o
          @ ^ [Y3: option_a,Q6: option_a] : ( member7553362430500004246tion_a @ ( produc1279490705019198813tion_a @ Q @ ( produc4645961035427687802tion_a @ X3 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ ( transi3979659241729338265tion_a @ M ) ) ) ) ) ).

% h_simps
thf(fact_448_ofsm__table_Osimps_I2_J,axiom,
    ! [M: fsm_a_b_c,F: a > set_a,K: nat,Q: a] :
      ( ( ofsm_table_a_b_c @ M @ F @ ( suc @ K ) @ Q )
      = ( collect_a
        @ ^ [Q6: a] :
            ( ( member_a @ Q6 @ ( ofsm_table_a_b_c @ M @ F @ K @ Q ) )
            & ! [X5: b] :
                ( ( member_b @ X5 @ ( inputs_a_b_c @ M ) )
               => ! [Y3: c] :
                    ( ( member_c @ Y3 @ ( outputs_a_b_c @ M ) )
                   => ( case_option_o_a
                      @ ( ( h_obs_a_b_c @ M @ Q6 @ X5 @ Y3 )
                        = none_a )
                      @ ^ [QT: a] :
                          ( case_option_o_a @ $false
                          @ ^ [QT2: a] :
                              ( ( ofsm_table_a_b_c @ M @ F @ K @ QT )
                              = ( ofsm_table_a_b_c @ M @ F @ K @ QT2 ) )
                          @ ( h_obs_a_b_c @ M @ Q6 @ X5 @ Y3 ) )
                      @ ( h_obs_a_b_c @ M @ Q @ X5 @ Y3 ) ) ) ) ) ) ) ).

% ofsm_table.simps(2)
thf(fact_449_extract__Some__iff,axiom,
    ! [P: produc1359548802814378470tion_a > $o,Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a,Y: produc1359548802814378470tion_a,Zs2: list_P7785822056432494700tion_a] :
      ( ( ( extrac3690066604882443758tion_a @ P @ Xs )
        = ( some_P2694159108044368845tion_a @ ( produc1528220918894490456tion_a @ Ys2 @ ( produc8574412006938266909tion_a @ Y @ Zs2 ) ) ) )
      = ( ( Xs
          = ( append7143236819997180545tion_a @ Ys2 @ ( cons_P7206946803070396828tion_a @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X5: produc1359548802814378470tion_a] :
              ( ( member5139186223151194895tion_a @ X5 @ ( set_Pr150857188848084347tion_a @ Ys2 ) )
              & ( P @ X5 ) ) ) ) ).

% extract_Some_iff
thf(fact_450_extract__Some__iff,axiom,
    ! [P: product_prod_b_c > $o,Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c,Y: product_prod_b_c,Zs2: list_P903359562653991662od_b_c] :
      ( ( ( extrac2790361661052662384od_b_c @ P @ Xs )
        = ( some_P278523132111576139od_b_c @ ( produc1861375773765947862od_b_c @ Ys2 @ ( produc1467100693395308445od_b_c @ Y @ Zs2 ) ) ) )
      = ( ( Xs
          = ( append2547753245680614915od_b_c @ Ys2 @ ( cons_P4529483553340347422od_b_c @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X5: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ X5 @ ( set_Product_prod_b_c2 @ Ys2 ) )
              & ( P @ X5 ) ) ) ) ).

% extract_Some_iff
thf(fact_451_extract__Some__iff,axiom,
    ! [P: b > $o,Xs: list_b,Ys2: list_b,Y: b,Zs2: list_b] :
      ( ( ( extract_b @ P @ Xs )
        = ( some_P7780201447483665076list_b @ ( produc5759544327908914751list_b @ Ys2 @ ( produc8158425114075849053list_b @ Y @ Zs2 ) ) ) )
      = ( ( Xs
          = ( append_b @ Ys2 @ ( cons_b @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X5: b] :
              ( ( member_b @ X5 @ ( set_b2 @ Ys2 ) )
              & ( P @ X5 ) ) ) ) ).

% extract_Some_iff
thf(fact_452_extract__Some__iff,axiom,
    ! [P: c > $o,Xs: list_c,Ys2: list_c,Y: c,Zs2: list_c] :
      ( ( ( extract_c @ P @ Xs )
        = ( some_P982376114519543987list_c @ ( produc8314379991811161150list_c @ Ys2 @ ( produc423015118819100573list_c @ Y @ Zs2 ) ) ) )
      = ( ( Xs
          = ( append_c @ Ys2 @ ( cons_c @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X5: c] :
              ( ( member_c @ X5 @ ( set_c2 @ Ys2 ) )
              & ( P @ X5 ) ) ) ) ).

% extract_Some_iff
thf(fact_453_extract__Some__iff,axiom,
    ! [P: a > $o,Xs: list_a,Ys2: list_a,Y: a,Zs2: list_a] :
      ( ( ( extract_a @ P @ Xs )
        = ( some_P5354654743593010357list_a @ ( produc3204708664006668352list_a @ Ys2 @ ( produc6670463072477821725list_a @ Y @ Zs2 ) ) ) )
      = ( ( Xs
          = ( append_a @ Ys2 @ ( cons_a @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X5: a] :
              ( ( member_a @ X5 @ ( set_a2 @ Ys2 ) )
              & ( P @ X5 ) ) ) ) ).

% extract_Some_iff
thf(fact_454_extract__SomeE,axiom,
    ! [P: produc1359548802814378470tion_a > $o,Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a,Y: produc1359548802814378470tion_a,Zs2: list_P7785822056432494700tion_a] :
      ( ( ( extrac3690066604882443758tion_a @ P @ Xs )
        = ( some_P2694159108044368845tion_a @ ( produc1528220918894490456tion_a @ Ys2 @ ( produc8574412006938266909tion_a @ Y @ Zs2 ) ) ) )
     => ( ( Xs
          = ( append7143236819997180545tion_a @ Ys2 @ ( cons_P7206946803070396828tion_a @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X7: produc1359548802814378470tion_a] :
              ( ( member5139186223151194895tion_a @ X7 @ ( set_Pr150857188848084347tion_a @ Ys2 ) )
              & ( P @ X7 ) ) ) ) ).

% extract_SomeE
thf(fact_455_extract__SomeE,axiom,
    ! [P: product_prod_b_c > $o,Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c,Y: product_prod_b_c,Zs2: list_P903359562653991662od_b_c] :
      ( ( ( extrac2790361661052662384od_b_c @ P @ Xs )
        = ( some_P278523132111576139od_b_c @ ( produc1861375773765947862od_b_c @ Ys2 @ ( produc1467100693395308445od_b_c @ Y @ Zs2 ) ) ) )
     => ( ( Xs
          = ( append2547753245680614915od_b_c @ Ys2 @ ( cons_P4529483553340347422od_b_c @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X7: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ X7 @ ( set_Product_prod_b_c2 @ Ys2 ) )
              & ( P @ X7 ) ) ) ) ).

% extract_SomeE
thf(fact_456_extract__SomeE,axiom,
    ! [P: b > $o,Xs: list_b,Ys2: list_b,Y: b,Zs2: list_b] :
      ( ( ( extract_b @ P @ Xs )
        = ( some_P7780201447483665076list_b @ ( produc5759544327908914751list_b @ Ys2 @ ( produc8158425114075849053list_b @ Y @ Zs2 ) ) ) )
     => ( ( Xs
          = ( append_b @ Ys2 @ ( cons_b @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X7: b] :
              ( ( member_b @ X7 @ ( set_b2 @ Ys2 ) )
              & ( P @ X7 ) ) ) ) ).

% extract_SomeE
thf(fact_457_extract__SomeE,axiom,
    ! [P: c > $o,Xs: list_c,Ys2: list_c,Y: c,Zs2: list_c] :
      ( ( ( extract_c @ P @ Xs )
        = ( some_P982376114519543987list_c @ ( produc8314379991811161150list_c @ Ys2 @ ( produc423015118819100573list_c @ Y @ Zs2 ) ) ) )
     => ( ( Xs
          = ( append_c @ Ys2 @ ( cons_c @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X7: c] :
              ( ( member_c @ X7 @ ( set_c2 @ Ys2 ) )
              & ( P @ X7 ) ) ) ) ).

% extract_SomeE
thf(fact_458_extract__SomeE,axiom,
    ! [P: a > $o,Xs: list_a,Ys2: list_a,Y: a,Zs2: list_a] :
      ( ( ( extract_a @ P @ Xs )
        = ( some_P5354654743593010357list_a @ ( produc3204708664006668352list_a @ Ys2 @ ( produc6670463072477821725list_a @ Y @ Zs2 ) ) ) )
     => ( ( Xs
          = ( append_a @ Ys2 @ ( cons_a @ Y @ Zs2 ) ) )
        & ( P @ Y )
        & ~ ? [X7: a] :
              ( ( member_a @ X7 @ ( set_a2 @ Ys2 ) )
              & ( P @ X7 ) ) ) ) ).

% extract_SomeE
thf(fact_459_append_Oright__neutral,axiom,
    ! [A: list_P7785822056432494700tion_a] :
      ( ( append7143236819997180545tion_a @ A @ nil_Pr596483954593762796tion_a )
      = A ) ).

% append.right_neutral
thf(fact_460_append_Oright__neutral,axiom,
    ! [A: list_P903359562653991662od_b_c] :
      ( ( append2547753245680614915od_b_c @ A @ nil_Product_prod_b_c )
      = A ) ).

% append.right_neutral
thf(fact_461_append_Oright__neutral,axiom,
    ! [A: list_b] :
      ( ( append_b @ A @ nil_b )
      = A ) ).

% append.right_neutral
thf(fact_462_append_Oright__neutral,axiom,
    ! [A: list_c] :
      ( ( append_c @ A @ nil_c )
      = A ) ).

% append.right_neutral
thf(fact_463_append_Oright__neutral,axiom,
    ! [A: list_a] :
      ( ( append_a @ A @ nil_a )
      = A ) ).

% append.right_neutral
thf(fact_464_append__Nil2,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( append7143236819997180545tion_a @ Xs @ nil_Pr596483954593762796tion_a )
      = Xs ) ).

% append_Nil2
thf(fact_465_append__Nil2,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( append2547753245680614915od_b_c @ Xs @ nil_Product_prod_b_c )
      = Xs ) ).

% append_Nil2
thf(fact_466_append__Nil2,axiom,
    ! [Xs: list_b] :
      ( ( append_b @ Xs @ nil_b )
      = Xs ) ).

% append_Nil2
thf(fact_467_append__Nil2,axiom,
    ! [Xs: list_c] :
      ( ( append_c @ Xs @ nil_c )
      = Xs ) ).

% append_Nil2
thf(fact_468_append__Nil2,axiom,
    ! [Xs: list_a] :
      ( ( append_a @ Xs @ nil_a )
      = Xs ) ).

% append_Nil2
thf(fact_469_append__self__conv,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( ( append7143236819997180545tion_a @ Xs @ Ys2 )
        = Xs )
      = ( Ys2 = nil_Pr596483954593762796tion_a ) ) ).

% append_self_conv
thf(fact_470_append__self__conv,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( ( append2547753245680614915od_b_c @ Xs @ Ys2 )
        = Xs )
      = ( Ys2 = nil_Product_prod_b_c ) ) ).

% append_self_conv
thf(fact_471_append__self__conv,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( ( append_b @ Xs @ Ys2 )
        = Xs )
      = ( Ys2 = nil_b ) ) ).

% append_self_conv
thf(fact_472_append__self__conv,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( ( append_c @ Xs @ Ys2 )
        = Xs )
      = ( Ys2 = nil_c ) ) ).

% append_self_conv
thf(fact_473_append__self__conv,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( append_a @ Xs @ Ys2 )
        = Xs )
      = ( Ys2 = nil_a ) ) ).

% append_self_conv
thf(fact_474_self__append__conv,axiom,
    ! [Y: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( Y
        = ( append7143236819997180545tion_a @ Y @ Ys2 ) )
      = ( Ys2 = nil_Pr596483954593762796tion_a ) ) ).

% self_append_conv
thf(fact_475_self__append__conv,axiom,
    ! [Y: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( Y
        = ( append2547753245680614915od_b_c @ Y @ Ys2 ) )
      = ( Ys2 = nil_Product_prod_b_c ) ) ).

% self_append_conv
thf(fact_476_self__append__conv,axiom,
    ! [Y: list_b,Ys2: list_b] :
      ( ( Y
        = ( append_b @ Y @ Ys2 ) )
      = ( Ys2 = nil_b ) ) ).

% self_append_conv
thf(fact_477_self__append__conv,axiom,
    ! [Y: list_c,Ys2: list_c] :
      ( ( Y
        = ( append_c @ Y @ Ys2 ) )
      = ( Ys2 = nil_c ) ) ).

% self_append_conv
thf(fact_478_self__append__conv,axiom,
    ! [Y: list_a,Ys2: list_a] :
      ( ( Y
        = ( append_a @ Y @ Ys2 ) )
      = ( Ys2 = nil_a ) ) ).

% self_append_conv
thf(fact_479_append__self__conv2,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( ( append7143236819997180545tion_a @ Xs @ Ys2 )
        = Ys2 )
      = ( Xs = nil_Pr596483954593762796tion_a ) ) ).

% append_self_conv2
thf(fact_480_append__self__conv2,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( ( append2547753245680614915od_b_c @ Xs @ Ys2 )
        = Ys2 )
      = ( Xs = nil_Product_prod_b_c ) ) ).

% append_self_conv2
thf(fact_481_append__self__conv2,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( ( append_b @ Xs @ Ys2 )
        = Ys2 )
      = ( Xs = nil_b ) ) ).

% append_self_conv2
thf(fact_482_append__self__conv2,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( ( append_c @ Xs @ Ys2 )
        = Ys2 )
      = ( Xs = nil_c ) ) ).

% append_self_conv2
thf(fact_483_append__self__conv2,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( append_a @ Xs @ Ys2 )
        = Ys2 )
      = ( Xs = nil_a ) ) ).

% append_self_conv2
thf(fact_484_self__append__conv2,axiom,
    ! [Y: list_P7785822056432494700tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( Y
        = ( append7143236819997180545tion_a @ Xs @ Y ) )
      = ( Xs = nil_Pr596483954593762796tion_a ) ) ).

% self_append_conv2
thf(fact_485_self__append__conv2,axiom,
    ! [Y: list_P903359562653991662od_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( Y
        = ( append2547753245680614915od_b_c @ Xs @ Y ) )
      = ( Xs = nil_Product_prod_b_c ) ) ).

% self_append_conv2
thf(fact_486_self__append__conv2,axiom,
    ! [Y: list_b,Xs: list_b] :
      ( ( Y
        = ( append_b @ Xs @ Y ) )
      = ( Xs = nil_b ) ) ).

% self_append_conv2
thf(fact_487_self__append__conv2,axiom,
    ! [Y: list_c,Xs: list_c] :
      ( ( Y
        = ( append_c @ Xs @ Y ) )
      = ( Xs = nil_c ) ) ).

% self_append_conv2
thf(fact_488_self__append__conv2,axiom,
    ! [Y: list_a,Xs: list_a] :
      ( ( Y
        = ( append_a @ Xs @ Y ) )
      = ( Xs = nil_a ) ) ).

% self_append_conv2
thf(fact_489_Nil__is__append__conv,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( nil_Pr596483954593762796tion_a
        = ( append7143236819997180545tion_a @ Xs @ Ys2 ) )
      = ( ( Xs = nil_Pr596483954593762796tion_a )
        & ( Ys2 = nil_Pr596483954593762796tion_a ) ) ) ).

% Nil_is_append_conv
thf(fact_490_Nil__is__append__conv,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( nil_Product_prod_b_c
        = ( append2547753245680614915od_b_c @ Xs @ Ys2 ) )
      = ( ( Xs = nil_Product_prod_b_c )
        & ( Ys2 = nil_Product_prod_b_c ) ) ) ).

% Nil_is_append_conv
thf(fact_491_Nil__is__append__conv,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( nil_b
        = ( append_b @ Xs @ Ys2 ) )
      = ( ( Xs = nil_b )
        & ( Ys2 = nil_b ) ) ) ).

% Nil_is_append_conv
thf(fact_492_Nil__is__append__conv,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( nil_c
        = ( append_c @ Xs @ Ys2 ) )
      = ( ( Xs = nil_c )
        & ( Ys2 = nil_c ) ) ) ).

% Nil_is_append_conv
thf(fact_493_Nil__is__append__conv,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( nil_a
        = ( append_a @ Xs @ Ys2 ) )
      = ( ( Xs = nil_a )
        & ( Ys2 = nil_a ) ) ) ).

% Nil_is_append_conv
thf(fact_494_append__is__Nil__conv,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( ( append7143236819997180545tion_a @ Xs @ Ys2 )
        = nil_Pr596483954593762796tion_a )
      = ( ( Xs = nil_Pr596483954593762796tion_a )
        & ( Ys2 = nil_Pr596483954593762796tion_a ) ) ) ).

% append_is_Nil_conv
thf(fact_495_append__is__Nil__conv,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( ( append2547753245680614915od_b_c @ Xs @ Ys2 )
        = nil_Product_prod_b_c )
      = ( ( Xs = nil_Product_prod_b_c )
        & ( Ys2 = nil_Product_prod_b_c ) ) ) ).

% append_is_Nil_conv
thf(fact_496_append__is__Nil__conv,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( ( append_b @ Xs @ Ys2 )
        = nil_b )
      = ( ( Xs = nil_b )
        & ( Ys2 = nil_b ) ) ) ).

% append_is_Nil_conv
thf(fact_497_append__is__Nil__conv,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( ( append_c @ Xs @ Ys2 )
        = nil_c )
      = ( ( Xs = nil_c )
        & ( Ys2 = nil_c ) ) ) ).

% append_is_Nil_conv
thf(fact_498_append__is__Nil__conv,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( append_a @ Xs @ Ys2 )
        = nil_a )
      = ( ( Xs = nil_a )
        & ( Ys2 = nil_a ) ) ) ).

% append_is_Nil_conv
thf(fact_499_append1__eq__conv,axiom,
    ! [Xs: list_P7785822056432494700tion_a,X3: produc1359548802814378470tion_a,Ys2: list_P7785822056432494700tion_a,Y: produc1359548802814378470tion_a] :
      ( ( ( append7143236819997180545tion_a @ Xs @ ( cons_P7206946803070396828tion_a @ X3 @ nil_Pr596483954593762796tion_a ) )
        = ( append7143236819997180545tion_a @ Ys2 @ ( cons_P7206946803070396828tion_a @ Y @ nil_Pr596483954593762796tion_a ) ) )
      = ( ( Xs = Ys2 )
        & ( X3 = Y ) ) ) ).

% append1_eq_conv
thf(fact_500_append1__eq__conv,axiom,
    ! [Xs: list_P903359562653991662od_b_c,X3: product_prod_b_c,Ys2: list_P903359562653991662od_b_c,Y: product_prod_b_c] :
      ( ( ( append2547753245680614915od_b_c @ Xs @ ( cons_P4529483553340347422od_b_c @ X3 @ nil_Product_prod_b_c ) )
        = ( append2547753245680614915od_b_c @ Ys2 @ ( cons_P4529483553340347422od_b_c @ Y @ nil_Product_prod_b_c ) ) )
      = ( ( Xs = Ys2 )
        & ( X3 = Y ) ) ) ).

% append1_eq_conv
thf(fact_501_append1__eq__conv,axiom,
    ! [Xs: list_b,X3: b,Ys2: list_b,Y: b] :
      ( ( ( append_b @ Xs @ ( cons_b @ X3 @ nil_b ) )
        = ( append_b @ Ys2 @ ( cons_b @ Y @ nil_b ) ) )
      = ( ( Xs = Ys2 )
        & ( X3 = Y ) ) ) ).

% append1_eq_conv
thf(fact_502_append1__eq__conv,axiom,
    ! [Xs: list_c,X3: c,Ys2: list_c,Y: c] :
      ( ( ( append_c @ Xs @ ( cons_c @ X3 @ nil_c ) )
        = ( append_c @ Ys2 @ ( cons_c @ Y @ nil_c ) ) )
      = ( ( Xs = Ys2 )
        & ( X3 = Y ) ) ) ).

% append1_eq_conv
thf(fact_503_append1__eq__conv,axiom,
    ! [Xs: list_a,X3: a,Ys2: list_a,Y: a] :
      ( ( ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) )
        = ( append_a @ Ys2 @ ( cons_a @ Y @ nil_a ) ) )
      = ( ( Xs = Ys2 )
        & ( X3 = Y ) ) ) ).

% append1_eq_conv
thf(fact_504_hd__append2,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( Xs != nil_Pr596483954593762796tion_a )
     => ( ( hd_Pro2241809909539833041tion_a @ ( append7143236819997180545tion_a @ Xs @ Ys2 ) )
        = ( hd_Pro2241809909539833041tion_a @ Xs ) ) ) ).

% hd_append2
thf(fact_505_hd__append2,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( Xs != nil_Product_prod_b_c )
     => ( ( hd_Product_prod_b_c @ ( append2547753245680614915od_b_c @ Xs @ Ys2 ) )
        = ( hd_Product_prod_b_c @ Xs ) ) ) ).

% hd_append2
thf(fact_506_hd__append2,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( Xs != nil_b )
     => ( ( hd_b @ ( append_b @ Xs @ Ys2 ) )
        = ( hd_b @ Xs ) ) ) ).

% hd_append2
thf(fact_507_hd__append2,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( Xs != nil_c )
     => ( ( hd_c @ ( append_c @ Xs @ Ys2 ) )
        = ( hd_c @ Xs ) ) ) ).

% hd_append2
thf(fact_508_hd__append2,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( Xs != nil_a )
     => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
        = ( hd_a @ Xs ) ) ) ).

% hd_append2
thf(fact_509_append__Nil,axiom,
    ! [Ys2: list_P7785822056432494700tion_a] :
      ( ( append7143236819997180545tion_a @ nil_Pr596483954593762796tion_a @ Ys2 )
      = Ys2 ) ).

% append_Nil
thf(fact_510_append__Nil,axiom,
    ! [Ys2: list_P903359562653991662od_b_c] :
      ( ( append2547753245680614915od_b_c @ nil_Product_prod_b_c @ Ys2 )
      = Ys2 ) ).

% append_Nil
thf(fact_511_append__Nil,axiom,
    ! [Ys2: list_b] :
      ( ( append_b @ nil_b @ Ys2 )
      = Ys2 ) ).

% append_Nil
thf(fact_512_append__Nil,axiom,
    ! [Ys2: list_c] :
      ( ( append_c @ nil_c @ Ys2 )
      = Ys2 ) ).

% append_Nil
thf(fact_513_append__Nil,axiom,
    ! [Ys2: list_a] :
      ( ( append_a @ nil_a @ Ys2 )
      = Ys2 ) ).

% append_Nil
thf(fact_514_append_Oleft__neutral,axiom,
    ! [A: list_P7785822056432494700tion_a] :
      ( ( append7143236819997180545tion_a @ nil_Pr596483954593762796tion_a @ A )
      = A ) ).

% append.left_neutral
thf(fact_515_append_Oleft__neutral,axiom,
    ! [A: list_P903359562653991662od_b_c] :
      ( ( append2547753245680614915od_b_c @ nil_Product_prod_b_c @ A )
      = A ) ).

% append.left_neutral
thf(fact_516_append_Oleft__neutral,axiom,
    ! [A: list_b] :
      ( ( append_b @ nil_b @ A )
      = A ) ).

% append.left_neutral
thf(fact_517_append_Oleft__neutral,axiom,
    ! [A: list_c] :
      ( ( append_c @ nil_c @ A )
      = A ) ).

% append.left_neutral
thf(fact_518_append_Oleft__neutral,axiom,
    ! [A: list_a] :
      ( ( append_a @ nil_a @ A )
      = A ) ).

% append.left_neutral
thf(fact_519_eq__Nil__appendI,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( Xs = Ys2 )
     => ( Xs
        = ( append7143236819997180545tion_a @ nil_Pr596483954593762796tion_a @ Ys2 ) ) ) ).

% eq_Nil_appendI
thf(fact_520_eq__Nil__appendI,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( Xs = Ys2 )
     => ( Xs
        = ( append2547753245680614915od_b_c @ nil_Product_prod_b_c @ Ys2 ) ) ) ).

% eq_Nil_appendI
thf(fact_521_eq__Nil__appendI,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( Xs = Ys2 )
     => ( Xs
        = ( append_b @ nil_b @ Ys2 ) ) ) ).

% eq_Nil_appendI
thf(fact_522_eq__Nil__appendI,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( Xs = Ys2 )
     => ( Xs
        = ( append_c @ nil_c @ Ys2 ) ) ) ).

% eq_Nil_appendI
thf(fact_523_eq__Nil__appendI,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( Xs = Ys2 )
     => ( Xs
        = ( append_a @ nil_a @ Ys2 ) ) ) ).

% eq_Nil_appendI
thf(fact_524_list__concat__non__elem,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
     => ( ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Ys2 ) )
       => ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ ( append7143236819997180545tion_a @ Xs @ Ys2 ) ) ) ) ) ).

% list_concat_non_elem
thf(fact_525_list__concat__non__elem,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
     => ( ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Ys2 ) )
       => ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ ( append2547753245680614915od_b_c @ Xs @ Ys2 ) ) ) ) ) ).

% list_concat_non_elem
thf(fact_526_list__concat__non__elem,axiom,
    ! [X3: b,Xs: list_b,Ys2: list_b] :
      ( ~ ( member_b @ X3 @ ( set_b2 @ Xs ) )
     => ( ~ ( member_b @ X3 @ ( set_b2 @ Ys2 ) )
       => ~ ( member_b @ X3 @ ( set_b2 @ ( append_b @ Xs @ Ys2 ) ) ) ) ) ).

% list_concat_non_elem
thf(fact_527_list__concat__non__elem,axiom,
    ! [X3: c,Xs: list_c,Ys2: list_c] :
      ( ~ ( member_c @ X3 @ ( set_c2 @ Xs ) )
     => ( ~ ( member_c @ X3 @ ( set_c2 @ Ys2 ) )
       => ~ ( member_c @ X3 @ ( set_c2 @ ( append_c @ Xs @ Ys2 ) ) ) ) ) ).

% list_concat_non_elem
thf(fact_528_list__concat__non__elem,axiom,
    ! [X3: a,Xs: list_a,Ys2: list_a] :
      ( ~ ( member_a @ X3 @ ( set_a2 @ Xs ) )
     => ( ~ ( member_a @ X3 @ ( set_a2 @ Ys2 ) )
       => ~ ( member_a @ X3 @ ( set_a2 @ ( append_a @ Xs @ Ys2 ) ) ) ) ) ).

% list_concat_non_elem
thf(fact_529_list__prefix__elem,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ ( append7143236819997180545tion_a @ Xs @ Ys2 ) ) )
     => ( ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Ys2 ) )
       => ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) ) ) ) ).

% list_prefix_elem
thf(fact_530_list__prefix__elem,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ ( append2547753245680614915od_b_c @ Xs @ Ys2 ) ) )
     => ( ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Ys2 ) )
       => ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) ) ) ) ).

% list_prefix_elem
thf(fact_531_list__prefix__elem,axiom,
    ! [X3: b,Xs: list_b,Ys2: list_b] :
      ( ( member_b @ X3 @ ( set_b2 @ ( append_b @ Xs @ Ys2 ) ) )
     => ( ~ ( member_b @ X3 @ ( set_b2 @ Ys2 ) )
       => ( member_b @ X3 @ ( set_b2 @ Xs ) ) ) ) ).

% list_prefix_elem
thf(fact_532_list__prefix__elem,axiom,
    ! [X3: c,Xs: list_c,Ys2: list_c] :
      ( ( member_c @ X3 @ ( set_c2 @ ( append_c @ Xs @ Ys2 ) ) )
     => ( ~ ( member_c @ X3 @ ( set_c2 @ Ys2 ) )
       => ( member_c @ X3 @ ( set_c2 @ Xs ) ) ) ) ).

% list_prefix_elem
thf(fact_533_list__prefix__elem,axiom,
    ! [X3: a,Xs: list_a,Ys2: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ ( append_a @ Xs @ Ys2 ) ) )
     => ( ~ ( member_a @ X3 @ ( set_a2 @ Ys2 ) )
       => ( member_a @ X3 @ ( set_a2 @ Xs ) ) ) ) ).

% list_prefix_elem
thf(fact_534_list__set__sym,axiom,
    ! [X3: list_P7785822056432494700tion_a,Y: list_P7785822056432494700tion_a] :
      ( ( set_Pr150857188848084347tion_a @ ( append7143236819997180545tion_a @ X3 @ Y ) )
      = ( set_Pr150857188848084347tion_a @ ( append7143236819997180545tion_a @ Y @ X3 ) ) ) ).

% list_set_sym
thf(fact_535_list__set__sym,axiom,
    ! [X3: list_P903359562653991662od_b_c,Y: list_P903359562653991662od_b_c] :
      ( ( set_Product_prod_b_c2 @ ( append2547753245680614915od_b_c @ X3 @ Y ) )
      = ( set_Product_prod_b_c2 @ ( append2547753245680614915od_b_c @ Y @ X3 ) ) ) ).

% list_set_sym
thf(fact_536_list__set__sym,axiom,
    ! [X3: list_b,Y: list_b] :
      ( ( set_b2 @ ( append_b @ X3 @ Y ) )
      = ( set_b2 @ ( append_b @ Y @ X3 ) ) ) ).

% list_set_sym
thf(fact_537_list__set__sym,axiom,
    ! [X3: list_c,Y: list_c] :
      ( ( set_c2 @ ( append_c @ X3 @ Y ) )
      = ( set_c2 @ ( append_c @ Y @ X3 ) ) ) ).

% list_set_sym
thf(fact_538_list__set__sym,axiom,
    ! [X3: list_a,Y: list_a] :
      ( ( set_a2 @ ( append_a @ X3 @ Y ) )
      = ( set_a2 @ ( append_a @ Y @ X3 ) ) ) ).

% list_set_sym
thf(fact_539_rev__induct,axiom,
    ! [P: list_P7785822056432494700tion_a > $o,Xs: list_P7785822056432494700tion_a] :
      ( ( P @ nil_Pr596483954593762796tion_a )
     => ( ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
            ( ( P @ Xs2 )
           => ( P @ ( append7143236819997180545tion_a @ Xs2 @ ( cons_P7206946803070396828tion_a @ X @ nil_Pr596483954593762796tion_a ) ) ) )
       => ( P @ Xs ) ) ) ).

% rev_induct
thf(fact_540_rev__induct,axiom,
    ! [P: list_P903359562653991662od_b_c > $o,Xs: list_P903359562653991662od_b_c] :
      ( ( P @ nil_Product_prod_b_c )
     => ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
            ( ( P @ Xs2 )
           => ( P @ ( append2547753245680614915od_b_c @ Xs2 @ ( cons_P4529483553340347422od_b_c @ X @ nil_Product_prod_b_c ) ) ) )
       => ( P @ Xs ) ) ) ).

% rev_induct
thf(fact_541_rev__induct,axiom,
    ! [P: list_b > $o,Xs: list_b] :
      ( ( P @ nil_b )
     => ( ! [X: b,Xs2: list_b] :
            ( ( P @ Xs2 )
           => ( P @ ( append_b @ Xs2 @ ( cons_b @ X @ nil_b ) ) ) )
       => ( P @ Xs ) ) ) ).

% rev_induct
thf(fact_542_rev__induct,axiom,
    ! [P: list_c > $o,Xs: list_c] :
      ( ( P @ nil_c )
     => ( ! [X: c,Xs2: list_c] :
            ( ( P @ Xs2 )
           => ( P @ ( append_c @ Xs2 @ ( cons_c @ X @ nil_c ) ) ) )
       => ( P @ Xs ) ) ) ).

% rev_induct
thf(fact_543_rev__induct,axiom,
    ! [P: list_a > $o,Xs: list_a] :
      ( ( P @ nil_a )
     => ( ! [X: a,Xs2: list_a] :
            ( ( P @ Xs2 )
           => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) ) )
       => ( P @ Xs ) ) ) ).

% rev_induct
thf(fact_544_rev__exhaust,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( Xs != nil_Pr596483954593762796tion_a )
     => ~ ! [Ys3: list_P7785822056432494700tion_a,Y2: produc1359548802814378470tion_a] :
            ( Xs
           != ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ Y2 @ nil_Pr596483954593762796tion_a ) ) ) ) ).

% rev_exhaust
thf(fact_545_rev__exhaust,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( Xs != nil_Product_prod_b_c )
     => ~ ! [Ys3: list_P903359562653991662od_b_c,Y2: product_prod_b_c] :
            ( Xs
           != ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ Y2 @ nil_Product_prod_b_c ) ) ) ) ).

% rev_exhaust
thf(fact_546_rev__exhaust,axiom,
    ! [Xs: list_b] :
      ( ( Xs != nil_b )
     => ~ ! [Ys3: list_b,Y2: b] :
            ( Xs
           != ( append_b @ Ys3 @ ( cons_b @ Y2 @ nil_b ) ) ) ) ).

% rev_exhaust
thf(fact_547_rev__exhaust,axiom,
    ! [Xs: list_c] :
      ( ( Xs != nil_c )
     => ~ ! [Ys3: list_c,Y2: c] :
            ( Xs
           != ( append_c @ Ys3 @ ( cons_c @ Y2 @ nil_c ) ) ) ) ).

% rev_exhaust
thf(fact_548_rev__exhaust,axiom,
    ! [Xs: list_a] :
      ( ( Xs != nil_a )
     => ~ ! [Ys3: list_a,Y2: a] :
            ( Xs
           != ( append_a @ Ys3 @ ( cons_a @ Y2 @ nil_a ) ) ) ) ).

% rev_exhaust
thf(fact_549_Cons__eq__append__conv,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a,Zs2: list_P7785822056432494700tion_a] :
      ( ( ( cons_P7206946803070396828tion_a @ X3 @ Xs )
        = ( append7143236819997180545tion_a @ Ys2 @ Zs2 ) )
      = ( ( ( Ys2 = nil_Pr596483954593762796tion_a )
          & ( ( cons_P7206946803070396828tion_a @ X3 @ Xs )
            = Zs2 ) )
        | ? [Ys4: list_P7785822056432494700tion_a] :
            ( ( ( cons_P7206946803070396828tion_a @ X3 @ Ys4 )
              = Ys2 )
            & ( Xs
              = ( append7143236819997180545tion_a @ Ys4 @ Zs2 ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_550_Cons__eq__append__conv,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c,Zs2: list_P903359562653991662od_b_c] :
      ( ( ( cons_P4529483553340347422od_b_c @ X3 @ Xs )
        = ( append2547753245680614915od_b_c @ Ys2 @ Zs2 ) )
      = ( ( ( Ys2 = nil_Product_prod_b_c )
          & ( ( cons_P4529483553340347422od_b_c @ X3 @ Xs )
            = Zs2 ) )
        | ? [Ys4: list_P903359562653991662od_b_c] :
            ( ( ( cons_P4529483553340347422od_b_c @ X3 @ Ys4 )
              = Ys2 )
            & ( Xs
              = ( append2547753245680614915od_b_c @ Ys4 @ Zs2 ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_551_Cons__eq__append__conv,axiom,
    ! [X3: b,Xs: list_b,Ys2: list_b,Zs2: list_b] :
      ( ( ( cons_b @ X3 @ Xs )
        = ( append_b @ Ys2 @ Zs2 ) )
      = ( ( ( Ys2 = nil_b )
          & ( ( cons_b @ X3 @ Xs )
            = Zs2 ) )
        | ? [Ys4: list_b] :
            ( ( ( cons_b @ X3 @ Ys4 )
              = Ys2 )
            & ( Xs
              = ( append_b @ Ys4 @ Zs2 ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_552_Cons__eq__append__conv,axiom,
    ! [X3: c,Xs: list_c,Ys2: list_c,Zs2: list_c] :
      ( ( ( cons_c @ X3 @ Xs )
        = ( append_c @ Ys2 @ Zs2 ) )
      = ( ( ( Ys2 = nil_c )
          & ( ( cons_c @ X3 @ Xs )
            = Zs2 ) )
        | ? [Ys4: list_c] :
            ( ( ( cons_c @ X3 @ Ys4 )
              = Ys2 )
            & ( Xs
              = ( append_c @ Ys4 @ Zs2 ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_553_Cons__eq__append__conv,axiom,
    ! [X3: a,Xs: list_a,Ys2: list_a,Zs2: list_a] :
      ( ( ( cons_a @ X3 @ Xs )
        = ( append_a @ Ys2 @ Zs2 ) )
      = ( ( ( Ys2 = nil_a )
          & ( ( cons_a @ X3 @ Xs )
            = Zs2 ) )
        | ? [Ys4: list_a] :
            ( ( ( cons_a @ X3 @ Ys4 )
              = Ys2 )
            & ( Xs
              = ( append_a @ Ys4 @ Zs2 ) ) ) ) ) ).

% Cons_eq_append_conv
thf(fact_554_append__eq__Cons__conv,axiom,
    ! [Ys2: list_P7785822056432494700tion_a,Zs2: list_P7785822056432494700tion_a,X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( ( append7143236819997180545tion_a @ Ys2 @ Zs2 )
        = ( cons_P7206946803070396828tion_a @ X3 @ Xs ) )
      = ( ( ( Ys2 = nil_Pr596483954593762796tion_a )
          & ( Zs2
            = ( cons_P7206946803070396828tion_a @ X3 @ Xs ) ) )
        | ? [Ys4: list_P7785822056432494700tion_a] :
            ( ( Ys2
              = ( cons_P7206946803070396828tion_a @ X3 @ Ys4 ) )
            & ( ( append7143236819997180545tion_a @ Ys4 @ Zs2 )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_555_append__eq__Cons__conv,axiom,
    ! [Ys2: list_P903359562653991662od_b_c,Zs2: list_P903359562653991662od_b_c,X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( ( append2547753245680614915od_b_c @ Ys2 @ Zs2 )
        = ( cons_P4529483553340347422od_b_c @ X3 @ Xs ) )
      = ( ( ( Ys2 = nil_Product_prod_b_c )
          & ( Zs2
            = ( cons_P4529483553340347422od_b_c @ X3 @ Xs ) ) )
        | ? [Ys4: list_P903359562653991662od_b_c] :
            ( ( Ys2
              = ( cons_P4529483553340347422od_b_c @ X3 @ Ys4 ) )
            & ( ( append2547753245680614915od_b_c @ Ys4 @ Zs2 )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_556_append__eq__Cons__conv,axiom,
    ! [Ys2: list_b,Zs2: list_b,X3: b,Xs: list_b] :
      ( ( ( append_b @ Ys2 @ Zs2 )
        = ( cons_b @ X3 @ Xs ) )
      = ( ( ( Ys2 = nil_b )
          & ( Zs2
            = ( cons_b @ X3 @ Xs ) ) )
        | ? [Ys4: list_b] :
            ( ( Ys2
              = ( cons_b @ X3 @ Ys4 ) )
            & ( ( append_b @ Ys4 @ Zs2 )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_557_append__eq__Cons__conv,axiom,
    ! [Ys2: list_c,Zs2: list_c,X3: c,Xs: list_c] :
      ( ( ( append_c @ Ys2 @ Zs2 )
        = ( cons_c @ X3 @ Xs ) )
      = ( ( ( Ys2 = nil_c )
          & ( Zs2
            = ( cons_c @ X3 @ Xs ) ) )
        | ? [Ys4: list_c] :
            ( ( Ys2
              = ( cons_c @ X3 @ Ys4 ) )
            & ( ( append_c @ Ys4 @ Zs2 )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_558_append__eq__Cons__conv,axiom,
    ! [Ys2: list_a,Zs2: list_a,X3: a,Xs: list_a] :
      ( ( ( append_a @ Ys2 @ Zs2 )
        = ( cons_a @ X3 @ Xs ) )
      = ( ( ( Ys2 = nil_a )
          & ( Zs2
            = ( cons_a @ X3 @ Xs ) ) )
        | ? [Ys4: list_a] :
            ( ( Ys2
              = ( cons_a @ X3 @ Ys4 ) )
            & ( ( append_a @ Ys4 @ Zs2 )
              = Xs ) ) ) ) ).

% append_eq_Cons_conv
thf(fact_559_rev__nonempty__induct,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: list_P7785822056432494700tion_a > $o] :
      ( ( Xs != nil_Pr596483954593762796tion_a )
     => ( ! [X: produc1359548802814378470tion_a] : ( P @ ( cons_P7206946803070396828tion_a @ X @ nil_Pr596483954593762796tion_a ) )
       => ( ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
              ( ( Xs2 != nil_Pr596483954593762796tion_a )
             => ( ( P @ Xs2 )
               => ( P @ ( append7143236819997180545tion_a @ Xs2 @ ( cons_P7206946803070396828tion_a @ X @ nil_Pr596483954593762796tion_a ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_560_rev__nonempty__induct,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: list_P903359562653991662od_b_c > $o] :
      ( ( Xs != nil_Product_prod_b_c )
     => ( ! [X: product_prod_b_c] : ( P @ ( cons_P4529483553340347422od_b_c @ X @ nil_Product_prod_b_c ) )
       => ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
              ( ( Xs2 != nil_Product_prod_b_c )
             => ( ( P @ Xs2 )
               => ( P @ ( append2547753245680614915od_b_c @ Xs2 @ ( cons_P4529483553340347422od_b_c @ X @ nil_Product_prod_b_c ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_561_rev__nonempty__induct,axiom,
    ! [Xs: list_b,P: list_b > $o] :
      ( ( Xs != nil_b )
     => ( ! [X: b] : ( P @ ( cons_b @ X @ nil_b ) )
       => ( ! [X: b,Xs2: list_b] :
              ( ( Xs2 != nil_b )
             => ( ( P @ Xs2 )
               => ( P @ ( append_b @ Xs2 @ ( cons_b @ X @ nil_b ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_562_rev__nonempty__induct,axiom,
    ! [Xs: list_c,P: list_c > $o] :
      ( ( Xs != nil_c )
     => ( ! [X: c] : ( P @ ( cons_c @ X @ nil_c ) )
       => ( ! [X: c,Xs2: list_c] :
              ( ( Xs2 != nil_c )
             => ( ( P @ Xs2 )
               => ( P @ ( append_c @ Xs2 @ ( cons_c @ X @ nil_c ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_563_rev__nonempty__induct,axiom,
    ! [Xs: list_a,P: list_a > $o] :
      ( ( Xs != nil_a )
     => ( ! [X: a] : ( P @ ( cons_a @ X @ nil_a ) )
       => ( ! [X: a,Xs2: list_a] :
              ( ( Xs2 != nil_a )
             => ( ( P @ Xs2 )
               => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) ) ) )
         => ( P @ Xs ) ) ) ) ).

% rev_nonempty_induct
thf(fact_564_split__list,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
     => ? [Ys3: list_P7785822056432494700tion_a,Zs3: list_P7785822056432494700tion_a] :
          ( Xs
          = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X3 @ Zs3 ) ) ) ) ).

% split_list
thf(fact_565_split__list,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
     => ? [Ys3: list_P903359562653991662od_b_c,Zs3: list_P903359562653991662od_b_c] :
          ( Xs
          = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X3 @ Zs3 ) ) ) ) ).

% split_list
thf(fact_566_split__list,axiom,
    ! [X3: b,Xs: list_b] :
      ( ( member_b @ X3 @ ( set_b2 @ Xs ) )
     => ? [Ys3: list_b,Zs3: list_b] :
          ( Xs
          = ( append_b @ Ys3 @ ( cons_b @ X3 @ Zs3 ) ) ) ) ).

% split_list
thf(fact_567_split__list,axiom,
    ! [X3: c,Xs: list_c] :
      ( ( member_c @ X3 @ ( set_c2 @ Xs ) )
     => ? [Ys3: list_c,Zs3: list_c] :
          ( Xs
          = ( append_c @ Ys3 @ ( cons_c @ X3 @ Zs3 ) ) ) ) ).

% split_list
thf(fact_568_split__list,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
     => ? [Ys3: list_a,Zs3: list_a] :
          ( Xs
          = ( append_a @ Ys3 @ ( cons_a @ X3 @ Zs3 ) ) ) ) ).

% split_list
thf(fact_569_split__list__last,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
     => ? [Ys3: list_P7785822056432494700tion_a,Zs3: list_P7785822056432494700tion_a] :
          ( ( Xs
            = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X3 @ Zs3 ) ) )
          & ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_570_split__list__last,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
     => ? [Ys3: list_P903359562653991662od_b_c,Zs3: list_P903359562653991662od_b_c] :
          ( ( Xs
            = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X3 @ Zs3 ) ) )
          & ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_571_split__list__last,axiom,
    ! [X3: b,Xs: list_b] :
      ( ( member_b @ X3 @ ( set_b2 @ Xs ) )
     => ? [Ys3: list_b,Zs3: list_b] :
          ( ( Xs
            = ( append_b @ Ys3 @ ( cons_b @ X3 @ Zs3 ) ) )
          & ~ ( member_b @ X3 @ ( set_b2 @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_572_split__list__last,axiom,
    ! [X3: c,Xs: list_c] :
      ( ( member_c @ X3 @ ( set_c2 @ Xs ) )
     => ? [Ys3: list_c,Zs3: list_c] :
          ( ( Xs
            = ( append_c @ Ys3 @ ( cons_c @ X3 @ Zs3 ) ) )
          & ~ ( member_c @ X3 @ ( set_c2 @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_573_split__list__last,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
     => ? [Ys3: list_a,Zs3: list_a] :
          ( ( Xs
            = ( append_a @ Ys3 @ ( cons_a @ X3 @ Zs3 ) ) )
          & ~ ( member_a @ X3 @ ( set_a2 @ Zs3 ) ) ) ) ).

% split_list_last
thf(fact_574_split__list__prop,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ? [X7: produc1359548802814378470tion_a] :
          ( ( member5139186223151194895tion_a @ X7 @ ( set_Pr150857188848084347tion_a @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_P7785822056432494700tion_a,X: produc1359548802814378470tion_a] :
          ( ? [Zs3: list_P7785822056432494700tion_a] :
              ( Xs
              = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X @ Zs3 ) ) )
          & ( P @ X ) ) ) ).

% split_list_prop
thf(fact_575_split__list__prop,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: product_prod_b_c > $o] :
      ( ? [X7: product_prod_b_c] :
          ( ( member7862447941013992593od_b_c @ X7 @ ( set_Product_prod_b_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_P903359562653991662od_b_c,X: product_prod_b_c] :
          ( ? [Zs3: list_P903359562653991662od_b_c] :
              ( Xs
              = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X @ Zs3 ) ) )
          & ( P @ X ) ) ) ).

% split_list_prop
thf(fact_576_split__list__prop,axiom,
    ! [Xs: list_b,P: b > $o] :
      ( ? [X7: b] :
          ( ( member_b @ X7 @ ( set_b2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_b,X: b] :
          ( ? [Zs3: list_b] :
              ( Xs
              = ( append_b @ Ys3 @ ( cons_b @ X @ Zs3 ) ) )
          & ( P @ X ) ) ) ).

% split_list_prop
thf(fact_577_split__list__prop,axiom,
    ! [Xs: list_c,P: c > $o] :
      ( ? [X7: c] :
          ( ( member_c @ X7 @ ( set_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_c,X: c] :
          ( ? [Zs3: list_c] :
              ( Xs
              = ( append_c @ Ys3 @ ( cons_c @ X @ Zs3 ) ) )
          & ( P @ X ) ) ) ).

% split_list_prop
thf(fact_578_split__list__prop,axiom,
    ! [Xs: list_a,P: a > $o] :
      ( ? [X7: a] :
          ( ( member_a @ X7 @ ( set_a2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_a,X: a] :
          ( ? [Zs3: list_a] :
              ( Xs
              = ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) )
          & ( P @ X ) ) ) ).

% split_list_prop
thf(fact_579_split__list__first,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
     => ? [Ys3: list_P7785822056432494700tion_a,Zs3: list_P7785822056432494700tion_a] :
          ( ( Xs
            = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X3 @ Zs3 ) ) )
          & ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Ys3 ) ) ) ) ).

% split_list_first
thf(fact_580_split__list__first,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
     => ? [Ys3: list_P903359562653991662od_b_c,Zs3: list_P903359562653991662od_b_c] :
          ( ( Xs
            = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X3 @ Zs3 ) ) )
          & ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Ys3 ) ) ) ) ).

% split_list_first
thf(fact_581_split__list__first,axiom,
    ! [X3: b,Xs: list_b] :
      ( ( member_b @ X3 @ ( set_b2 @ Xs ) )
     => ? [Ys3: list_b,Zs3: list_b] :
          ( ( Xs
            = ( append_b @ Ys3 @ ( cons_b @ X3 @ Zs3 ) ) )
          & ~ ( member_b @ X3 @ ( set_b2 @ Ys3 ) ) ) ) ).

% split_list_first
thf(fact_582_split__list__first,axiom,
    ! [X3: c,Xs: list_c] :
      ( ( member_c @ X3 @ ( set_c2 @ Xs ) )
     => ? [Ys3: list_c,Zs3: list_c] :
          ( ( Xs
            = ( append_c @ Ys3 @ ( cons_c @ X3 @ Zs3 ) ) )
          & ~ ( member_c @ X3 @ ( set_c2 @ Ys3 ) ) ) ) ).

% split_list_first
thf(fact_583_split__list__first,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
     => ? [Ys3: list_a,Zs3: list_a] :
          ( ( Xs
            = ( append_a @ Ys3 @ ( cons_a @ X3 @ Zs3 ) ) )
          & ~ ( member_a @ X3 @ ( set_a2 @ Ys3 ) ) ) ) ).

% split_list_first
thf(fact_584_split__list__propE,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ? [X7: produc1359548802814378470tion_a] :
          ( ( member5139186223151194895tion_a @ X7 @ ( set_Pr150857188848084347tion_a @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_P7785822056432494700tion_a,X: produc1359548802814378470tion_a] :
            ( ? [Zs3: list_P7785822056432494700tion_a] :
                ( Xs
                = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X @ Zs3 ) ) )
           => ~ ( P @ X ) ) ) ).

% split_list_propE
thf(fact_585_split__list__propE,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: product_prod_b_c > $o] :
      ( ? [X7: product_prod_b_c] :
          ( ( member7862447941013992593od_b_c @ X7 @ ( set_Product_prod_b_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_P903359562653991662od_b_c,X: product_prod_b_c] :
            ( ? [Zs3: list_P903359562653991662od_b_c] :
                ( Xs
                = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X @ Zs3 ) ) )
           => ~ ( P @ X ) ) ) ).

% split_list_propE
thf(fact_586_split__list__propE,axiom,
    ! [Xs: list_b,P: b > $o] :
      ( ? [X7: b] :
          ( ( member_b @ X7 @ ( set_b2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_b,X: b] :
            ( ? [Zs3: list_b] :
                ( Xs
                = ( append_b @ Ys3 @ ( cons_b @ X @ Zs3 ) ) )
           => ~ ( P @ X ) ) ) ).

% split_list_propE
thf(fact_587_split__list__propE,axiom,
    ! [Xs: list_c,P: c > $o] :
      ( ? [X7: c] :
          ( ( member_c @ X7 @ ( set_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_c,X: c] :
            ( ? [Zs3: list_c] :
                ( Xs
                = ( append_c @ Ys3 @ ( cons_c @ X @ Zs3 ) ) )
           => ~ ( P @ X ) ) ) ).

% split_list_propE
thf(fact_588_split__list__propE,axiom,
    ! [Xs: list_a,P: a > $o] :
      ( ? [X7: a] :
          ( ( member_a @ X7 @ ( set_a2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_a,X: a] :
            ( ? [Zs3: list_a] :
                ( Xs
                = ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) )
           => ~ ( P @ X ) ) ) ).

% split_list_propE
thf(fact_589_append__Cons__eq__iff,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a,Xs3: list_P7785822056432494700tion_a,Ys5: list_P7785822056432494700tion_a] :
      ( ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
     => ( ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Ys2 ) )
       => ( ( ( append7143236819997180545tion_a @ Xs @ ( cons_P7206946803070396828tion_a @ X3 @ Ys2 ) )
            = ( append7143236819997180545tion_a @ Xs3 @ ( cons_P7206946803070396828tion_a @ X3 @ Ys5 ) ) )
          = ( ( Xs = Xs3 )
            & ( Ys2 = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_590_append__Cons__eq__iff,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c,Xs3: list_P903359562653991662od_b_c,Ys5: list_P903359562653991662od_b_c] :
      ( ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
     => ( ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Ys2 ) )
       => ( ( ( append2547753245680614915od_b_c @ Xs @ ( cons_P4529483553340347422od_b_c @ X3 @ Ys2 ) )
            = ( append2547753245680614915od_b_c @ Xs3 @ ( cons_P4529483553340347422od_b_c @ X3 @ Ys5 ) ) )
          = ( ( Xs = Xs3 )
            & ( Ys2 = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_591_append__Cons__eq__iff,axiom,
    ! [X3: b,Xs: list_b,Ys2: list_b,Xs3: list_b,Ys5: list_b] :
      ( ~ ( member_b @ X3 @ ( set_b2 @ Xs ) )
     => ( ~ ( member_b @ X3 @ ( set_b2 @ Ys2 ) )
       => ( ( ( append_b @ Xs @ ( cons_b @ X3 @ Ys2 ) )
            = ( append_b @ Xs3 @ ( cons_b @ X3 @ Ys5 ) ) )
          = ( ( Xs = Xs3 )
            & ( Ys2 = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_592_append__Cons__eq__iff,axiom,
    ! [X3: c,Xs: list_c,Ys2: list_c,Xs3: list_c,Ys5: list_c] :
      ( ~ ( member_c @ X3 @ ( set_c2 @ Xs ) )
     => ( ~ ( member_c @ X3 @ ( set_c2 @ Ys2 ) )
       => ( ( ( append_c @ Xs @ ( cons_c @ X3 @ Ys2 ) )
            = ( append_c @ Xs3 @ ( cons_c @ X3 @ Ys5 ) ) )
          = ( ( Xs = Xs3 )
            & ( Ys2 = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_593_append__Cons__eq__iff,axiom,
    ! [X3: a,Xs: list_a,Ys2: list_a,Xs3: list_a,Ys5: list_a] :
      ( ~ ( member_a @ X3 @ ( set_a2 @ Xs ) )
     => ( ~ ( member_a @ X3 @ ( set_a2 @ Ys2 ) )
       => ( ( ( append_a @ Xs @ ( cons_a @ X3 @ Ys2 ) )
            = ( append_a @ Xs3 @ ( cons_a @ X3 @ Ys5 ) ) )
          = ( ( Xs = Xs3 )
            & ( Ys2 = Ys5 ) ) ) ) ) ).

% append_Cons_eq_iff
thf(fact_594_in__set__conv__decomp,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
      = ( ? [Ys: list_P7785822056432494700tion_a,Zs: list_P7785822056432494700tion_a] :
            ( Xs
            = ( append7143236819997180545tion_a @ Ys @ ( cons_P7206946803070396828tion_a @ X3 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_595_in__set__conv__decomp,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
      = ( ? [Ys: list_P903359562653991662od_b_c,Zs: list_P903359562653991662od_b_c] :
            ( Xs
            = ( append2547753245680614915od_b_c @ Ys @ ( cons_P4529483553340347422od_b_c @ X3 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_596_in__set__conv__decomp,axiom,
    ! [X3: b,Xs: list_b] :
      ( ( member_b @ X3 @ ( set_b2 @ Xs ) )
      = ( ? [Ys: list_b,Zs: list_b] :
            ( Xs
            = ( append_b @ Ys @ ( cons_b @ X3 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_597_in__set__conv__decomp,axiom,
    ! [X3: c,Xs: list_c] :
      ( ( member_c @ X3 @ ( set_c2 @ Xs ) )
      = ( ? [Ys: list_c,Zs: list_c] :
            ( Xs
            = ( append_c @ Ys @ ( cons_c @ X3 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_598_in__set__conv__decomp,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
      = ( ? [Ys: list_a,Zs: list_a] :
            ( Xs
            = ( append_a @ Ys @ ( cons_a @ X3 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp
thf(fact_599_split__list__last__prop,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ? [X7: produc1359548802814378470tion_a] :
          ( ( member5139186223151194895tion_a @ X7 @ ( set_Pr150857188848084347tion_a @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_P7785822056432494700tion_a,X: produc1359548802814378470tion_a,Zs3: list_P7785822056432494700tion_a] :
          ( ( Xs
            = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: produc1359548802814378470tion_a] :
              ( ( member5139186223151194895tion_a @ Xa2 @ ( set_Pr150857188848084347tion_a @ Zs3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_last_prop
thf(fact_600_split__list__last__prop,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: product_prod_b_c > $o] :
      ( ? [X7: product_prod_b_c] :
          ( ( member7862447941013992593od_b_c @ X7 @ ( set_Product_prod_b_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_P903359562653991662od_b_c,X: product_prod_b_c,Zs3: list_P903359562653991662od_b_c] :
          ( ( Xs
            = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ Xa2 @ ( set_Product_prod_b_c2 @ Zs3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_last_prop
thf(fact_601_split__list__last__prop,axiom,
    ! [Xs: list_b,P: b > $o] :
      ( ? [X7: b] :
          ( ( member_b @ X7 @ ( set_b2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_b,X: b,Zs3: list_b] :
          ( ( Xs
            = ( append_b @ Ys3 @ ( cons_b @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: b] :
              ( ( member_b @ Xa2 @ ( set_b2 @ Zs3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_last_prop
thf(fact_602_split__list__last__prop,axiom,
    ! [Xs: list_c,P: c > $o] :
      ( ? [X7: c] :
          ( ( member_c @ X7 @ ( set_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_c,X: c,Zs3: list_c] :
          ( ( Xs
            = ( append_c @ Ys3 @ ( cons_c @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: c] :
              ( ( member_c @ Xa2 @ ( set_c2 @ Zs3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_last_prop
thf(fact_603_split__list__last__prop,axiom,
    ! [Xs: list_a,P: a > $o] :
      ( ? [X7: a] :
          ( ( member_a @ X7 @ ( set_a2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_a,X: a,Zs3: list_a] :
          ( ( Xs
            = ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: a] :
              ( ( member_a @ Xa2 @ ( set_a2 @ Zs3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_last_prop
thf(fact_604_split__list__first__prop,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ? [X7: produc1359548802814378470tion_a] :
          ( ( member5139186223151194895tion_a @ X7 @ ( set_Pr150857188848084347tion_a @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_P7785822056432494700tion_a,X: produc1359548802814378470tion_a] :
          ( ? [Zs3: list_P7785822056432494700tion_a] :
              ( Xs
              = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: produc1359548802814378470tion_a] :
              ( ( member5139186223151194895tion_a @ Xa2 @ ( set_Pr150857188848084347tion_a @ Ys3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_first_prop
thf(fact_605_split__list__first__prop,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: product_prod_b_c > $o] :
      ( ? [X7: product_prod_b_c] :
          ( ( member7862447941013992593od_b_c @ X7 @ ( set_Product_prod_b_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_P903359562653991662od_b_c,X: product_prod_b_c] :
          ( ? [Zs3: list_P903359562653991662od_b_c] :
              ( Xs
              = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ Xa2 @ ( set_Product_prod_b_c2 @ Ys3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_first_prop
thf(fact_606_split__list__first__prop,axiom,
    ! [Xs: list_b,P: b > $o] :
      ( ? [X7: b] :
          ( ( member_b @ X7 @ ( set_b2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_b,X: b] :
          ( ? [Zs3: list_b] :
              ( Xs
              = ( append_b @ Ys3 @ ( cons_b @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: b] :
              ( ( member_b @ Xa2 @ ( set_b2 @ Ys3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_first_prop
thf(fact_607_split__list__first__prop,axiom,
    ! [Xs: list_c,P: c > $o] :
      ( ? [X7: c] :
          ( ( member_c @ X7 @ ( set_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_c,X: c] :
          ( ? [Zs3: list_c] :
              ( Xs
              = ( append_c @ Ys3 @ ( cons_c @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: c] :
              ( ( member_c @ Xa2 @ ( set_c2 @ Ys3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_first_prop
thf(fact_608_split__list__first__prop,axiom,
    ! [Xs: list_a,P: a > $o] :
      ( ? [X7: a] :
          ( ( member_a @ X7 @ ( set_a2 @ Xs ) )
          & ( P @ X7 ) )
     => ? [Ys3: list_a,X: a] :
          ( ? [Zs3: list_a] :
              ( Xs
              = ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) )
          & ( P @ X )
          & ! [Xa2: a] :
              ( ( member_a @ Xa2 @ ( set_a2 @ Ys3 ) )
             => ~ ( P @ Xa2 ) ) ) ) ).

% split_list_first_prop
thf(fact_609_split__list__last__propE,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ? [X7: produc1359548802814378470tion_a] :
          ( ( member5139186223151194895tion_a @ X7 @ ( set_Pr150857188848084347tion_a @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_P7785822056432494700tion_a,X: produc1359548802814378470tion_a,Zs3: list_P7785822056432494700tion_a] :
            ( ( Xs
              = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: produc1359548802814378470tion_a] :
                    ( ( member5139186223151194895tion_a @ Xa2 @ ( set_Pr150857188848084347tion_a @ Zs3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_last_propE
thf(fact_610_split__list__last__propE,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: product_prod_b_c > $o] :
      ( ? [X7: product_prod_b_c] :
          ( ( member7862447941013992593od_b_c @ X7 @ ( set_Product_prod_b_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_P903359562653991662od_b_c,X: product_prod_b_c,Zs3: list_P903359562653991662od_b_c] :
            ( ( Xs
              = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: product_prod_b_c] :
                    ( ( member7862447941013992593od_b_c @ Xa2 @ ( set_Product_prod_b_c2 @ Zs3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_last_propE
thf(fact_611_split__list__last__propE,axiom,
    ! [Xs: list_b,P: b > $o] :
      ( ? [X7: b] :
          ( ( member_b @ X7 @ ( set_b2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_b,X: b,Zs3: list_b] :
            ( ( Xs
              = ( append_b @ Ys3 @ ( cons_b @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: b] :
                    ( ( member_b @ Xa2 @ ( set_b2 @ Zs3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_last_propE
thf(fact_612_split__list__last__propE,axiom,
    ! [Xs: list_c,P: c > $o] :
      ( ? [X7: c] :
          ( ( member_c @ X7 @ ( set_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_c,X: c,Zs3: list_c] :
            ( ( Xs
              = ( append_c @ Ys3 @ ( cons_c @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: c] :
                    ( ( member_c @ Xa2 @ ( set_c2 @ Zs3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_last_propE
thf(fact_613_split__list__last__propE,axiom,
    ! [Xs: list_a,P: a > $o] :
      ( ? [X7: a] :
          ( ( member_a @ X7 @ ( set_a2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_a,X: a,Zs3: list_a] :
            ( ( Xs
              = ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: a] :
                    ( ( member_a @ Xa2 @ ( set_a2 @ Zs3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_last_propE
thf(fact_614_split__list__first__propE,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ? [X7: produc1359548802814378470tion_a] :
          ( ( member5139186223151194895tion_a @ X7 @ ( set_Pr150857188848084347tion_a @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_P7785822056432494700tion_a,X: produc1359548802814378470tion_a] :
            ( ? [Zs3: list_P7785822056432494700tion_a] :
                ( Xs
                = ( append7143236819997180545tion_a @ Ys3 @ ( cons_P7206946803070396828tion_a @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: produc1359548802814378470tion_a] :
                    ( ( member5139186223151194895tion_a @ Xa2 @ ( set_Pr150857188848084347tion_a @ Ys3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_first_propE
thf(fact_615_split__list__first__propE,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: product_prod_b_c > $o] :
      ( ? [X7: product_prod_b_c] :
          ( ( member7862447941013992593od_b_c @ X7 @ ( set_Product_prod_b_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_P903359562653991662od_b_c,X: product_prod_b_c] :
            ( ? [Zs3: list_P903359562653991662od_b_c] :
                ( Xs
                = ( append2547753245680614915od_b_c @ Ys3 @ ( cons_P4529483553340347422od_b_c @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: product_prod_b_c] :
                    ( ( member7862447941013992593od_b_c @ Xa2 @ ( set_Product_prod_b_c2 @ Ys3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_first_propE
thf(fact_616_split__list__first__propE,axiom,
    ! [Xs: list_b,P: b > $o] :
      ( ? [X7: b] :
          ( ( member_b @ X7 @ ( set_b2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_b,X: b] :
            ( ? [Zs3: list_b] :
                ( Xs
                = ( append_b @ Ys3 @ ( cons_b @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: b] :
                    ( ( member_b @ Xa2 @ ( set_b2 @ Ys3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_first_propE
thf(fact_617_split__list__first__propE,axiom,
    ! [Xs: list_c,P: c > $o] :
      ( ? [X7: c] :
          ( ( member_c @ X7 @ ( set_c2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_c,X: c] :
            ( ? [Zs3: list_c] :
                ( Xs
                = ( append_c @ Ys3 @ ( cons_c @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: c] :
                    ( ( member_c @ Xa2 @ ( set_c2 @ Ys3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_first_propE
thf(fact_618_split__list__first__propE,axiom,
    ! [Xs: list_a,P: a > $o] :
      ( ? [X7: a] :
          ( ( member_a @ X7 @ ( set_a2 @ Xs ) )
          & ( P @ X7 ) )
     => ~ ! [Ys3: list_a,X: a] :
            ( ? [Zs3: list_a] :
                ( Xs
                = ( append_a @ Ys3 @ ( cons_a @ X @ Zs3 ) ) )
           => ( ( P @ X )
             => ~ ! [Xa2: a] :
                    ( ( member_a @ Xa2 @ ( set_a2 @ Ys3 ) )
                   => ~ ( P @ Xa2 ) ) ) ) ) ).

% split_list_first_propE
thf(fact_619_in__set__conv__decomp__last,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
      = ( ? [Ys: list_P7785822056432494700tion_a,Zs: list_P7785822056432494700tion_a] :
            ( ( Xs
              = ( append7143236819997180545tion_a @ Ys @ ( cons_P7206946803070396828tion_a @ X3 @ Zs ) ) )
            & ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Zs ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_620_in__set__conv__decomp__last,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
      = ( ? [Ys: list_P903359562653991662od_b_c,Zs: list_P903359562653991662od_b_c] :
            ( ( Xs
              = ( append2547753245680614915od_b_c @ Ys @ ( cons_P4529483553340347422od_b_c @ X3 @ Zs ) ) )
            & ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_621_in__set__conv__decomp__last,axiom,
    ! [X3: b,Xs: list_b] :
      ( ( member_b @ X3 @ ( set_b2 @ Xs ) )
      = ( ? [Ys: list_b,Zs: list_b] :
            ( ( Xs
              = ( append_b @ Ys @ ( cons_b @ X3 @ Zs ) ) )
            & ~ ( member_b @ X3 @ ( set_b2 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_622_in__set__conv__decomp__last,axiom,
    ! [X3: c,Xs: list_c] :
      ( ( member_c @ X3 @ ( set_c2 @ Xs ) )
      = ( ? [Ys: list_c,Zs: list_c] :
            ( ( Xs
              = ( append_c @ Ys @ ( cons_c @ X3 @ Zs ) ) )
            & ~ ( member_c @ X3 @ ( set_c2 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_623_in__set__conv__decomp__last,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
      = ( ? [Ys: list_a,Zs: list_a] :
            ( ( Xs
              = ( append_a @ Ys @ ( cons_a @ X3 @ Zs ) ) )
            & ~ ( member_a @ X3 @ ( set_a2 @ Zs ) ) ) ) ) ).

% in_set_conv_decomp_last
thf(fact_624_in__set__conv__decomp__first,axiom,
    ! [X3: produc1359548802814378470tion_a,Xs: list_P7785822056432494700tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Xs ) )
      = ( ? [Ys: list_P7785822056432494700tion_a,Zs: list_P7785822056432494700tion_a] :
            ( ( Xs
              = ( append7143236819997180545tion_a @ Ys @ ( cons_P7206946803070396828tion_a @ X3 @ Zs ) ) )
            & ~ ( member5139186223151194895tion_a @ X3 @ ( set_Pr150857188848084347tion_a @ Ys ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_625_in__set__conv__decomp__first,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
      = ( ? [Ys: list_P903359562653991662od_b_c,Zs: list_P903359562653991662od_b_c] :
            ( ( Xs
              = ( append2547753245680614915od_b_c @ Ys @ ( cons_P4529483553340347422od_b_c @ X3 @ Zs ) ) )
            & ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Ys ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_626_in__set__conv__decomp__first,axiom,
    ! [X3: b,Xs: list_b] :
      ( ( member_b @ X3 @ ( set_b2 @ Xs ) )
      = ( ? [Ys: list_b,Zs: list_b] :
            ( ( Xs
              = ( append_b @ Ys @ ( cons_b @ X3 @ Zs ) ) )
            & ~ ( member_b @ X3 @ ( set_b2 @ Ys ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_627_in__set__conv__decomp__first,axiom,
    ! [X3: c,Xs: list_c] :
      ( ( member_c @ X3 @ ( set_c2 @ Xs ) )
      = ( ? [Ys: list_c,Zs: list_c] :
            ( ( Xs
              = ( append_c @ Ys @ ( cons_c @ X3 @ Zs ) ) )
            & ~ ( member_c @ X3 @ ( set_c2 @ Ys ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_628_in__set__conv__decomp__first,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( member_a @ X3 @ ( set_a2 @ Xs ) )
      = ( ? [Ys: list_a,Zs: list_a] :
            ( ( Xs
              = ( append_a @ Ys @ ( cons_a @ X3 @ Zs ) ) )
            & ~ ( member_a @ X3 @ ( set_a2 @ Ys ) ) ) ) ) ).

% in_set_conv_decomp_first
thf(fact_629_split__list__last__prop__iff,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ( ? [X5: produc1359548802814378470tion_a] :
            ( ( member5139186223151194895tion_a @ X5 @ ( set_Pr150857188848084347tion_a @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_P7785822056432494700tion_a,X5: produc1359548802814378470tion_a,Zs: list_P7785822056432494700tion_a] :
            ( ( Xs
              = ( append7143236819997180545tion_a @ Ys @ ( cons_P7206946803070396828tion_a @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: produc1359548802814378470tion_a] :
                ( ( member5139186223151194895tion_a @ Y3 @ ( set_Pr150857188848084347tion_a @ Zs ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_630_split__list__last__prop__iff,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: product_prod_b_c > $o] :
      ( ( ? [X5: product_prod_b_c] :
            ( ( member7862447941013992593od_b_c @ X5 @ ( set_Product_prod_b_c2 @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_P903359562653991662od_b_c,X5: product_prod_b_c,Zs: list_P903359562653991662od_b_c] :
            ( ( Xs
              = ( append2547753245680614915od_b_c @ Ys @ ( cons_P4529483553340347422od_b_c @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: product_prod_b_c] :
                ( ( member7862447941013992593od_b_c @ Y3 @ ( set_Product_prod_b_c2 @ Zs ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_631_split__list__last__prop__iff,axiom,
    ! [Xs: list_b,P: b > $o] :
      ( ( ? [X5: b] :
            ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_b,X5: b,Zs: list_b] :
            ( ( Xs
              = ( append_b @ Ys @ ( cons_b @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: b] :
                ( ( member_b @ Y3 @ ( set_b2 @ Zs ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_632_split__list__last__prop__iff,axiom,
    ! [Xs: list_c,P: c > $o] :
      ( ( ? [X5: c] :
            ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_c,X5: c,Zs: list_c] :
            ( ( Xs
              = ( append_c @ Ys @ ( cons_c @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: c] :
                ( ( member_c @ Y3 @ ( set_c2 @ Zs ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_633_split__list__last__prop__iff,axiom,
    ! [Xs: list_a,P: a > $o] :
      ( ( ? [X5: a] :
            ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_a,X5: a,Zs: list_a] :
            ( ( Xs
              = ( append_a @ Ys @ ( cons_a @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: a] :
                ( ( member_a @ Y3 @ ( set_a2 @ Zs ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_last_prop_iff
thf(fact_634_split__list__first__prop__iff,axiom,
    ! [Xs: list_P7785822056432494700tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ( ? [X5: produc1359548802814378470tion_a] :
            ( ( member5139186223151194895tion_a @ X5 @ ( set_Pr150857188848084347tion_a @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_P7785822056432494700tion_a,X5: produc1359548802814378470tion_a] :
            ( ? [Zs: list_P7785822056432494700tion_a] :
                ( Xs
                = ( append7143236819997180545tion_a @ Ys @ ( cons_P7206946803070396828tion_a @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: produc1359548802814378470tion_a] :
                ( ( member5139186223151194895tion_a @ Y3 @ ( set_Pr150857188848084347tion_a @ Ys ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_635_split__list__first__prop__iff,axiom,
    ! [Xs: list_P903359562653991662od_b_c,P: product_prod_b_c > $o] :
      ( ( ? [X5: product_prod_b_c] :
            ( ( member7862447941013992593od_b_c @ X5 @ ( set_Product_prod_b_c2 @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_P903359562653991662od_b_c,X5: product_prod_b_c] :
            ( ? [Zs: list_P903359562653991662od_b_c] :
                ( Xs
                = ( append2547753245680614915od_b_c @ Ys @ ( cons_P4529483553340347422od_b_c @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: product_prod_b_c] :
                ( ( member7862447941013992593od_b_c @ Y3 @ ( set_Product_prod_b_c2 @ Ys ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_636_split__list__first__prop__iff,axiom,
    ! [Xs: list_b,P: b > $o] :
      ( ( ? [X5: b] :
            ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_b,X5: b] :
            ( ? [Zs: list_b] :
                ( Xs
                = ( append_b @ Ys @ ( cons_b @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: b] :
                ( ( member_b @ Y3 @ ( set_b2 @ Ys ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_637_split__list__first__prop__iff,axiom,
    ! [Xs: list_c,P: c > $o] :
      ( ( ? [X5: c] :
            ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_c,X5: c] :
            ( ? [Zs: list_c] :
                ( Xs
                = ( append_c @ Ys @ ( cons_c @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: c] :
                ( ( member_c @ Y3 @ ( set_c2 @ Ys ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_638_split__list__first__prop__iff,axiom,
    ! [Xs: list_a,P: a > $o] :
      ( ( ? [X5: a] :
            ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
            & ( P @ X5 ) ) )
      = ( ? [Ys: list_a,X5: a] :
            ( ? [Zs: list_a] :
                ( Xs
                = ( append_a @ Ys @ ( cons_a @ X5 @ Zs ) ) )
            & ( P @ X5 )
            & ! [Y3: a] :
                ( ( member_a @ Y3 @ ( set_a2 @ Ys ) )
               => ~ ( P @ Y3 ) ) ) ) ) ).

% split_list_first_prop_iff
thf(fact_639_longest__common__prefix,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
    ? [Ps: list_P7785822056432494700tion_a,Xs4: list_P7785822056432494700tion_a,Ys6: list_P7785822056432494700tion_a] :
      ( ( Xs
        = ( append7143236819997180545tion_a @ Ps @ Xs4 ) )
      & ( Ys2
        = ( append7143236819997180545tion_a @ Ps @ Ys6 ) )
      & ( ( Xs4 = nil_Pr596483954593762796tion_a )
        | ( Ys6 = nil_Pr596483954593762796tion_a )
        | ( ( hd_Pro2241809909539833041tion_a @ Xs4 )
         != ( hd_Pro2241809909539833041tion_a @ Ys6 ) ) ) ) ).

% longest_common_prefix
thf(fact_640_longest__common__prefix,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
    ? [Ps: list_P903359562653991662od_b_c,Xs4: list_P903359562653991662od_b_c,Ys6: list_P903359562653991662od_b_c] :
      ( ( Xs
        = ( append2547753245680614915od_b_c @ Ps @ Xs4 ) )
      & ( Ys2
        = ( append2547753245680614915od_b_c @ Ps @ Ys6 ) )
      & ( ( Xs4 = nil_Product_prod_b_c )
        | ( Ys6 = nil_Product_prod_b_c )
        | ( ( hd_Product_prod_b_c @ Xs4 )
         != ( hd_Product_prod_b_c @ Ys6 ) ) ) ) ).

% longest_common_prefix
thf(fact_641_longest__common__prefix,axiom,
    ! [Xs: list_b,Ys2: list_b] :
    ? [Ps: list_b,Xs4: list_b,Ys6: list_b] :
      ( ( Xs
        = ( append_b @ Ps @ Xs4 ) )
      & ( Ys2
        = ( append_b @ Ps @ Ys6 ) )
      & ( ( Xs4 = nil_b )
        | ( Ys6 = nil_b )
        | ( ( hd_b @ Xs4 )
         != ( hd_b @ Ys6 ) ) ) ) ).

% longest_common_prefix
thf(fact_642_longest__common__prefix,axiom,
    ! [Xs: list_c,Ys2: list_c] :
    ? [Ps: list_c,Xs4: list_c,Ys6: list_c] :
      ( ( Xs
        = ( append_c @ Ps @ Xs4 ) )
      & ( Ys2
        = ( append_c @ Ps @ Ys6 ) )
      & ( ( Xs4 = nil_c )
        | ( Ys6 = nil_c )
        | ( ( hd_c @ Xs4 )
         != ( hd_c @ Ys6 ) ) ) ) ).

% longest_common_prefix
thf(fact_643_longest__common__prefix,axiom,
    ! [Xs: list_a,Ys2: list_a] :
    ? [Ps: list_a,Xs4: list_a,Ys6: list_a] :
      ( ( Xs
        = ( append_a @ Ps @ Xs4 ) )
      & ( Ys2
        = ( append_a @ Ps @ Ys6 ) )
      & ( ( Xs4 = nil_a )
        | ( Ys6 = nil_a )
        | ( ( hd_a @ Xs4 )
         != ( hd_a @ Ys6 ) ) ) ) ).

% longest_common_prefix
thf(fact_644_hd__append,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( ( Xs = nil_Pr596483954593762796tion_a )
       => ( ( hd_Pro2241809909539833041tion_a @ ( append7143236819997180545tion_a @ Xs @ Ys2 ) )
          = ( hd_Pro2241809909539833041tion_a @ Ys2 ) ) )
      & ( ( Xs != nil_Pr596483954593762796tion_a )
       => ( ( hd_Pro2241809909539833041tion_a @ ( append7143236819997180545tion_a @ Xs @ Ys2 ) )
          = ( hd_Pro2241809909539833041tion_a @ Xs ) ) ) ) ).

% hd_append
thf(fact_645_hd__append,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( ( Xs = nil_Product_prod_b_c )
       => ( ( hd_Product_prod_b_c @ ( append2547753245680614915od_b_c @ Xs @ Ys2 ) )
          = ( hd_Product_prod_b_c @ Ys2 ) ) )
      & ( ( Xs != nil_Product_prod_b_c )
       => ( ( hd_Product_prod_b_c @ ( append2547753245680614915od_b_c @ Xs @ Ys2 ) )
          = ( hd_Product_prod_b_c @ Xs ) ) ) ) ).

% hd_append
thf(fact_646_hd__append,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( ( Xs = nil_b )
       => ( ( hd_b @ ( append_b @ Xs @ Ys2 ) )
          = ( hd_b @ Ys2 ) ) )
      & ( ( Xs != nil_b )
       => ( ( hd_b @ ( append_b @ Xs @ Ys2 ) )
          = ( hd_b @ Xs ) ) ) ) ).

% hd_append
thf(fact_647_hd__append,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( ( Xs = nil_c )
       => ( ( hd_c @ ( append_c @ Xs @ Ys2 ) )
          = ( hd_c @ Ys2 ) ) )
      & ( ( Xs != nil_c )
       => ( ( hd_c @ ( append_c @ Xs @ Ys2 ) )
          = ( hd_c @ Xs ) ) ) ) ).

% hd_append
thf(fact_648_hd__append,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( ( Xs = nil_a )
       => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
          = ( hd_a @ Ys2 ) ) )
      & ( ( Xs != nil_a )
       => ( ( hd_a @ ( append_a @ Xs @ Ys2 ) )
          = ( hd_a @ Xs ) ) ) ) ).

% hd_append
thf(fact_649_case__prod__Pair__iden,axiom,
    ! [P4: product_prod_b_c] :
      ( ( produc281880053716946747od_b_c @ product_Pair_b_c @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_650_case__prod__Pair__iden,axiom,
    ! [P4: produc1359548802814378470tion_a] :
      ( ( produc9048760303372954427tion_a @ produc7403377568244983126tion_a @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_651_case__prod__Pair__iden,axiom,
    ! [P4: produc3509355604313844263tion_a] :
      ( ( produc2781663484249587963tion_a @ produc9011544418120257559tion_a @ P4 )
      = P4 ) ).

% case_prod_Pair_iden
thf(fact_652_suffixes_Oelims,axiom,
    ! [X3: list_P7785822056432494700tion_a,Y: list_l7195309243935277682tion_a] :
      ( ( ( suffix6577423449323756504tion_a @ X3 )
        = Y )
     => ( ( ( X3 = nil_Pr596483954593762796tion_a )
         => ( Y
           != ( cons_l4387309880990760226tion_a @ nil_Pr596483954593762796tion_a @ nil_li683225626544421234tion_a ) ) )
       => ~ ! [X: produc1359548802814378470tion_a,Xs2: list_P7785822056432494700tion_a] :
              ( ( X3
                = ( cons_P7206946803070396828tion_a @ X @ Xs2 ) )
             => ( Y
               != ( append6969318523410456455tion_a @ ( suffix6577423449323756504tion_a @ Xs2 ) @ ( cons_l4387309880990760226tion_a @ ( cons_P7206946803070396828tion_a @ X @ Xs2 ) @ nil_li683225626544421234tion_a ) ) ) ) ) ) ).

% suffixes.elims
thf(fact_653_suffixes_Oelims,axiom,
    ! [X3: list_P903359562653991662od_b_c,Y: list_l8907847357763382004od_b_c] :
      ( ( ( suffix2151784340763841114od_b_c @ X3 )
        = Y )
     => ( ( ( X3 = nil_Product_prod_b_c )
         => ( Y
           != ( cons_l342771267123639716od_b_c @ nil_Product_prod_b_c @ nil_li8071162985807626740od_b_c ) ) )
       => ~ ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
              ( ( X3
                = ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) )
             => ( Y
               != ( append6992831555715836169od_b_c @ ( suffix2151784340763841114od_b_c @ Xs2 ) @ ( cons_l342771267123639716od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ nil_li8071162985807626740od_b_c ) ) ) ) ) ) ).

% suffixes.elims
thf(fact_654_suffixes_Oelims,axiom,
    ! [X3: list_b,Y: list_list_b] :
      ( ( ( suffixes_b @ X3 )
        = Y )
     => ( ( ( X3 = nil_b )
         => ( Y
           != ( cons_list_b @ nil_b @ nil_list_b ) ) )
       => ~ ! [X: b,Xs2: list_b] :
              ( ( X3
                = ( cons_b @ X @ Xs2 ) )
             => ( Y
               != ( append_list_b @ ( suffixes_b @ Xs2 ) @ ( cons_list_b @ ( cons_b @ X @ Xs2 ) @ nil_list_b ) ) ) ) ) ) ).

% suffixes.elims
thf(fact_655_suffixes_Oelims,axiom,
    ! [X3: list_c,Y: list_list_c] :
      ( ( ( suffixes_c @ X3 )
        = Y )
     => ( ( ( X3 = nil_c )
         => ( Y
           != ( cons_list_c @ nil_c @ nil_list_c ) ) )
       => ~ ! [X: c,Xs2: list_c] :
              ( ( X3
                = ( cons_c @ X @ Xs2 ) )
             => ( Y
               != ( append_list_c @ ( suffixes_c @ Xs2 ) @ ( cons_list_c @ ( cons_c @ X @ Xs2 ) @ nil_list_c ) ) ) ) ) ) ).

% suffixes.elims
thf(fact_656_suffixes_Oelims,axiom,
    ! [X3: list_a,Y: list_list_a] :
      ( ( ( suffixes_a @ X3 )
        = Y )
     => ( ( ( X3 = nil_a )
         => ( Y
           != ( cons_list_a @ nil_a @ nil_list_a ) ) )
       => ~ ! [X: a,Xs2: list_a] :
              ( ( X3
                = ( cons_a @ X @ Xs2 ) )
             => ( Y
               != ( append_list_a @ ( suffixes_a @ Xs2 ) @ ( cons_list_a @ ( cons_a @ X @ Xs2 ) @ nil_list_a ) ) ) ) ) ) ).

% suffixes.elims
thf(fact_657_after_Opelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c,Y: a] :
      ( ( ( after_a_b_c @ X3 @ Xa @ Xb )
        = Y )
     => ( ( accp_P4000836841735168996od_b_c @ after_rel_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Product_prod_b_c )
           => ( ( Y = Xa )
             => ~ ( accp_P4000836841735168996od_b_c @ after_rel_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ nil_Product_prod_b_c ) ) ) ) )
         => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
                ( ( Xb
                  = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
               => ( ( Y
                    = ( after_a_b_c @ X3 @ ( the_a @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) @ Io2 ) )
                 => ~ ( accp_P4000836841735168996od_b_c @ after_rel_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) ) ) ) ) ) ) ) ) ).

% after.pelims
thf(fact_658_is__in__language_Opelims_I2_J,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c] :
      ( ( is_in_language_a_b_c @ X3 @ Xa @ Xb )
     => ( ( accp_P4000836841735168996od_b_c @ is_in_4296126181398531264_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Product_prod_b_c )
           => ~ ( accp_P4000836841735168996od_b_c @ is_in_4296126181398531264_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ nil_Product_prod_b_c ) ) ) )
         => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
                ( ( Xb
                  = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
               => ( ( accp_P4000836841735168996od_b_c @ is_in_4296126181398531264_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) ) ) )
                 => ~ ( case_option_o_a @ $false
                      @ ^ [Q6: a] : ( is_in_language_a_b_c @ X3 @ Q6 @ Io2 )
                      @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) ) ) ) ) ) ).

% is_in_language.pelims(2)
thf(fact_659_is__in__language_Opelims_I1_J,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c,Y: $o] :
      ( ( ( is_in_language_a_b_c @ X3 @ Xa @ Xb )
        = Y )
     => ( ( accp_P4000836841735168996od_b_c @ is_in_4296126181398531264_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ Xb ) ) )
       => ( ( ( Xb = nil_Product_prod_b_c )
           => ( Y
             => ~ ( accp_P4000836841735168996od_b_c @ is_in_4296126181398531264_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ nil_Product_prod_b_c ) ) ) ) )
         => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
                ( ( Xb
                  = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
               => ( ( Y
                    = ( case_option_o_a @ $false
                      @ ^ [Q6: a] : ( is_in_language_a_b_c @ X3 @ Q6 @ Io2 )
                      @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) )
                 => ~ ( accp_P4000836841735168996od_b_c @ is_in_4296126181398531264_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) ) ) ) ) ) ) ) ) ).

% is_in_language.pelims(1)
thf(fact_660_is__in__language_Oelims_I1_J,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c,Y: $o] :
      ( ( ( is_in_language_a_b_c @ X3 @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = nil_Product_prod_b_c )
         => ~ Y )
       => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
              ( ( Xb
                = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
             => ( Y
                = ( ~ ( case_option_o_a @ $false
                      @ ^ [Q6: a] : ( is_in_language_a_b_c @ X3 @ Q6 @ Io2 )
                      @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) ) ) ) ) ) ).

% is_in_language.elims(1)
thf(fact_661_is__in__language_Oelims_I2_J,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c] :
      ( ( is_in_language_a_b_c @ X3 @ Xa @ Xb )
     => ( ( Xb != nil_Product_prod_b_c )
       => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
              ( ( Xb
                = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
             => ~ ( case_option_o_a @ $false
                  @ ^ [Q6: a] : ( is_in_language_a_b_c @ X3 @ Q6 @ Io2 )
                  @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) ) ) ) ).

% is_in_language.elims(2)
thf(fact_662_cancel__comm__monoid__add__class_Odiff__cancel,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ A )
      = zero_zero_nat ) ).

% cancel_comm_monoid_add_class.diff_cancel
thf(fact_663_diff__zero,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ A @ zero_zero_nat )
      = A ) ).

% diff_zero
thf(fact_664_zero__diff,axiom,
    ! [A: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ A )
      = zero_zero_nat ) ).

% zero_diff
thf(fact_665_diff__0__eq__0,axiom,
    ! [N: nat] :
      ( ( minus_minus_nat @ zero_zero_nat @ N )
      = zero_zero_nat ) ).

% diff_0_eq_0
thf(fact_666_diff__self__eq__0,axiom,
    ! [M4: nat] :
      ( ( minus_minus_nat @ M4 @ M4 )
      = zero_zero_nat ) ).

% diff_self_eq_0
thf(fact_667_option_Ocollapse,axiom,
    ! [Option: option_a] :
      ( ( Option != none_a )
     => ( ( some_a @ ( the_a @ Option ) )
        = Option ) ) ).

% option.collapse
thf(fact_668_option_Ocollapse,axiom,
    ! [Option: option5121868808592388652tion_a] :
      ( ( Option != none_P2271573532998059335tion_a )
     => ( ( some_P2468934990214623435tion_a @ ( the_Pr3329654379071218298tion_a @ Option ) )
        = Option ) ) ).

% option.collapse
thf(fact_669_option_Osel,axiom,
    ! [X2: a] :
      ( ( the_a @ ( some_a @ X2 ) )
      = X2 ) ).

% option.sel
thf(fact_670_option_Osel,axiom,
    ! [X2: produc1359548802814378470tion_a] :
      ( ( the_Pr3329654379071218298tion_a @ ( some_P2468934990214623435tion_a @ X2 ) )
      = X2 ) ).

% option.sel
thf(fact_671_option_Oexpand,axiom,
    ! [Option: option_a,Option2: option_a] :
      ( ( ( Option = none_a )
        = ( Option2 = none_a ) )
     => ( ( ( Option != none_a )
         => ( ( Option2 != none_a )
           => ( ( the_a @ Option )
              = ( the_a @ Option2 ) ) ) )
       => ( Option = Option2 ) ) ) ).

% option.expand
thf(fact_672_option_Oexpand,axiom,
    ! [Option: option5121868808592388652tion_a,Option2: option5121868808592388652tion_a] :
      ( ( ( Option = none_P2271573532998059335tion_a )
        = ( Option2 = none_P2271573532998059335tion_a ) )
     => ( ( ( Option != none_P2271573532998059335tion_a )
         => ( ( Option2 != none_P2271573532998059335tion_a )
           => ( ( the_Pr3329654379071218298tion_a @ Option )
              = ( the_Pr3329654379071218298tion_a @ Option2 ) ) ) )
       => ( Option = Option2 ) ) ) ).

% option.expand
thf(fact_673_not0__implies__Suc,axiom,
    ! [N: nat] :
      ( ( N != zero_zero_nat )
     => ? [M5: nat] :
          ( N
          = ( suc @ M5 ) ) ) ).

% not0_implies_Suc
thf(fact_674_Zero__not__Suc,axiom,
    ! [M4: nat] :
      ( zero_zero_nat
     != ( suc @ M4 ) ) ).

% Zero_not_Suc
thf(fact_675_Zero__neq__Suc,axiom,
    ! [M4: nat] :
      ( zero_zero_nat
     != ( suc @ M4 ) ) ).

% Zero_neq_Suc
thf(fact_676_Suc__neq__Zero,axiom,
    ! [M4: nat] :
      ( ( suc @ M4 )
     != zero_zero_nat ) ).

% Suc_neq_Zero
thf(fact_677_zero__induct,axiom,
    ! [P: nat > $o,K: nat] :
      ( ( P @ K )
     => ( ! [N2: nat] :
            ( ( P @ ( suc @ N2 ) )
           => ( P @ N2 ) )
       => ( P @ zero_zero_nat ) ) ) ).

% zero_induct
thf(fact_678_diff__induct,axiom,
    ! [P: nat > nat > $o,M4: nat,N: nat] :
      ( ! [X: nat] : ( P @ X @ zero_zero_nat )
     => ( ! [Y2: nat] : ( P @ zero_zero_nat @ ( suc @ Y2 ) )
       => ( ! [X: nat,Y2: nat] :
              ( ( P @ X @ Y2 )
             => ( P @ ( suc @ X ) @ ( suc @ Y2 ) ) )
         => ( P @ M4 @ N ) ) ) ) ).

% diff_induct
thf(fact_679_nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ( P @ zero_zero_nat )
     => ( ! [N2: nat] :
            ( ( P @ N2 )
           => ( P @ ( suc @ N2 ) ) )
       => ( P @ N ) ) ) ).

% nat_induct
thf(fact_680_old_Onat_Oexhaust,axiom,
    ! [Y: nat] :
      ( ( Y != zero_zero_nat )
     => ~ ! [Nat3: nat] :
            ( Y
           != ( suc @ Nat3 ) ) ) ).

% old.nat.exhaust
thf(fact_681_nat_OdiscI,axiom,
    ! [Nat: nat,X2: nat] :
      ( ( Nat
        = ( suc @ X2 ) )
     => ( Nat != zero_zero_nat ) ) ).

% nat.discI
thf(fact_682_old_Onat_Odistinct_I1_J,axiom,
    ! [Nat2: nat] :
      ( zero_zero_nat
     != ( suc @ Nat2 ) ) ).

% old.nat.distinct(1)
thf(fact_683_old_Onat_Odistinct_I2_J,axiom,
    ! [Nat2: nat] :
      ( ( suc @ Nat2 )
     != zero_zero_nat ) ).

% old.nat.distinct(2)
thf(fact_684_nat_Odistinct_I1_J,axiom,
    ! [X2: nat] :
      ( zero_zero_nat
     != ( suc @ X2 ) ) ).

% nat.distinct(1)
thf(fact_685_minus__nat_Odiff__0,axiom,
    ! [M4: nat] :
      ( ( minus_minus_nat @ M4 @ zero_zero_nat )
      = M4 ) ).

% minus_nat.diff_0
thf(fact_686_diffs0__imp__equal,axiom,
    ! [M4: nat,N: nat] :
      ( ( ( minus_minus_nat @ M4 @ N )
        = zero_zero_nat )
     => ( ( ( minus_minus_nat @ N @ M4 )
          = zero_zero_nat )
       => ( M4 = N ) ) ) ).

% diffs0_imp_equal
thf(fact_687_option_Oexhaust__sel,axiom,
    ! [Option: option_a] :
      ( ( Option != none_a )
     => ( Option
        = ( some_a @ ( the_a @ Option ) ) ) ) ).

% option.exhaust_sel
thf(fact_688_option_Oexhaust__sel,axiom,
    ! [Option: option5121868808592388652tion_a] :
      ( ( Option != none_P2271573532998059335tion_a )
     => ( Option
        = ( some_P2468934990214623435tion_a @ ( the_Pr3329654379071218298tion_a @ Option ) ) ) ) ).

% option.exhaust_sel
thf(fact_689_option_Ocase__eq__if,axiom,
    ( case_o8532513079010850397on_a_a
    = ( ^ [F13: option5121868808592388652tion_a,F23: a > option5121868808592388652tion_a,Option3: option_a] : ( if_opt6106225609937793522tion_a @ ( Option3 = none_a ) @ F13 @ ( F23 @ ( the_a @ Option3 ) ) ) ) ) ).

% option.case_eq_if
thf(fact_690_One__nat__def,axiom,
    ( one_one_nat
    = ( suc @ zero_zero_nat ) ) ).

% One_nat_def
thf(fact_691_after__is__state__is__in__language,axiom,
    ! [Q: a,M: fsm_a_b_c,Io: list_P903359562653991662od_b_c] :
      ( ( member_a @ Q @ ( states_a_b_c @ M ) )
     => ( ( is_in_language_a_b_c @ M @ Q @ Io )
       => ( member_a @ ( after_a_b_c @ M @ Q @ Io ) @ ( states_a_b_c @ M ) ) ) ) ).

% after_is_state_is_in_language
thf(fact_692_option_Osplit__sel,axiom,
    ! [P: option5121868808592388652tion_a > $o,F12: option5121868808592388652tion_a,F22: a > option5121868808592388652tion_a,Option: option_a] :
      ( ( P @ ( case_o8532513079010850397on_a_a @ F12 @ F22 @ Option ) )
      = ( ( ( Option = none_a )
         => ( P @ F12 ) )
        & ( ( Option
            = ( some_a @ ( the_a @ Option ) ) )
         => ( P @ ( F22 @ ( the_a @ Option ) ) ) ) ) ) ).

% option.split_sel
thf(fact_693_option_Osplit__sel__asm,axiom,
    ! [P: option5121868808592388652tion_a > $o,F12: option5121868808592388652tion_a,F22: a > option5121868808592388652tion_a,Option: option_a] :
      ( ( P @ ( case_o8532513079010850397on_a_a @ F12 @ F22 @ Option ) )
      = ( ~ ( ( ( Option = none_a )
              & ~ ( P @ F12 ) )
            | ( ( Option
                = ( some_a @ ( the_a @ Option ) ) )
              & ~ ( P @ ( F22 @ ( the_a @ Option ) ) ) ) ) ) ) ).

% option.split_sel_asm
thf(fact_694_after_Osimps_I2_J,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Io: list_P903359562653991662od_b_c] :
      ( ( after_a_b_c @ M @ Q @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Io ) )
      = ( after_a_b_c @ M @ ( the_a @ ( h_obs_a_b_c @ M @ Q @ X3 @ Y ) ) @ Io ) ) ).

% after.simps(2)
thf(fact_695_is__in__language_Osimps_I2_J,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Io: list_P903359562653991662od_b_c] :
      ( ( is_in_language_a_b_c @ M @ Q @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Io ) )
      = ( case_option_o_a @ $false
        @ ^ [Q6: a] : ( is_in_language_a_b_c @ M @ Q6 @ Io )
        @ ( h_obs_a_b_c @ M @ Q @ X3 @ Y ) ) ) ).

% is_in_language.simps(2)
thf(fact_696_is__in__language_Oelims_I3_J,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c] :
      ( ~ ( is_in_language_a_b_c @ X3 @ Xa @ Xb )
     => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
            ( ( Xb
              = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
           => ( case_option_o_a @ $false
              @ ^ [Q6: a] : ( is_in_language_a_b_c @ X3 @ Q6 @ Io2 )
              @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) ) ) ).

% is_in_language.elims(3)
thf(fact_697_after_Oelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c,Y: a] :
      ( ( ( after_a_b_c @ X3 @ Xa @ Xb )
        = Y )
     => ( ( ( Xb = nil_Product_prod_b_c )
         => ( Y != Xa ) )
       => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
              ( ( Xb
                = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
             => ( Y
               != ( after_a_b_c @ X3 @ ( the_a @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) @ Io2 ) ) ) ) ) ).

% after.elims
thf(fact_698_is__in__language_Opelims_I3_J,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Xb: list_P903359562653991662od_b_c] :
      ( ~ ( is_in_language_a_b_c @ X3 @ Xa @ Xb )
     => ( ( accp_P4000836841735168996od_b_c @ is_in_4296126181398531264_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ Xb ) ) )
       => ~ ! [X: b,Y2: c,Io2: list_P903359562653991662od_b_c] :
              ( ( Xb
                = ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) )
             => ( ( accp_P4000836841735168996od_b_c @ is_in_4296126181398531264_a_b_c @ ( produc603523481723729227od_b_c @ X3 @ ( produc6078649392988585351od_b_c @ Xa @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ Io2 ) ) ) )
               => ( case_option_o_a @ $false
                  @ ^ [Q6: a] : ( is_in_language_a_b_c @ X3 @ Q6 @ Io2 )
                  @ ( h_obs_a_b_c @ X3 @ Xa @ X @ Y2 ) ) ) ) ) ) ).

% is_in_language.pelims(3)
thf(fact_699_ofsm__table_Oelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a > set_a,Xb: nat,Xc: a,Y: set_a] :
      ( ( ( ofsm_table_a_b_c @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xb = zero_zero_nat )
         => ~ ( ( ( member_a @ Xc @ ( states_a_b_c @ X3 ) )
               => ( Y
                  = ( Xa @ Xc ) ) )
              & ( ~ ( member_a @ Xc @ ( states_a_b_c @ X3 ) )
               => ( Y = bot_bot_set_a ) ) ) )
       => ~ ! [K3: nat] :
              ( ( Xb
                = ( suc @ K3 ) )
             => ( Y
               != ( collect_a
                  @ ^ [Q6: a] :
                      ( ( member_a @ Q6 @ ( ofsm_table_a_b_c @ X3 @ Xa @ K3 @ Xc ) )
                      & ! [X5: b] :
                          ( ( member_b @ X5 @ ( inputs_a_b_c @ X3 ) )
                         => ! [Y3: c] :
                              ( ( member_c @ Y3 @ ( outputs_a_b_c @ X3 ) )
                             => ( case_option_o_a
                                @ ( ( h_obs_a_b_c @ X3 @ Q6 @ X5 @ Y3 )
                                  = none_a )
                                @ ^ [QT: a] :
                                    ( case_option_o_a @ $false
                                    @ ^ [QT2: a] :
                                        ( ( ofsm_table_a_b_c @ X3 @ Xa @ K3 @ QT )
                                        = ( ofsm_table_a_b_c @ X3 @ Xa @ K3 @ QT2 ) )
                                    @ ( h_obs_a_b_c @ X3 @ Q6 @ X5 @ Y3 ) )
                                @ ( h_obs_a_b_c @ X3 @ Xc @ X5 @ Y3 ) ) ) ) ) ) ) ) ) ) ).

% ofsm_table.elims
thf(fact_700_set__empty2,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( bot_bo1215043797571408818tion_a
        = ( set_Pr150857188848084347tion_a @ Xs ) )
      = ( Xs = nil_Pr596483954593762796tion_a ) ) ).

% set_empty2
thf(fact_701_set__empty2,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( bot_bo2863795366942399540od_b_c
        = ( set_Product_prod_b_c2 @ Xs ) )
      = ( Xs = nil_Product_prod_b_c ) ) ).

% set_empty2
thf(fact_702_set__empty2,axiom,
    ! [Xs: list_b] :
      ( ( bot_bot_set_b
        = ( set_b2 @ Xs ) )
      = ( Xs = nil_b ) ) ).

% set_empty2
thf(fact_703_set__empty2,axiom,
    ! [Xs: list_c] :
      ( ( bot_bot_set_c
        = ( set_c2 @ Xs ) )
      = ( Xs = nil_c ) ) ).

% set_empty2
thf(fact_704_set__empty2,axiom,
    ! [Xs: list_a] :
      ( ( bot_bot_set_a
        = ( set_a2 @ Xs ) )
      = ( Xs = nil_a ) ) ).

% set_empty2
thf(fact_705_set__empty,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( ( set_Pr150857188848084347tion_a @ Xs )
        = bot_bo1215043797571408818tion_a )
      = ( Xs = nil_Pr596483954593762796tion_a ) ) ).

% set_empty
thf(fact_706_set__empty,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( ( set_Product_prod_b_c2 @ Xs )
        = bot_bo2863795366942399540od_b_c )
      = ( Xs = nil_Product_prod_b_c ) ) ).

% set_empty
thf(fact_707_set__empty,axiom,
    ! [Xs: list_b] :
      ( ( ( set_b2 @ Xs )
        = bot_bot_set_b )
      = ( Xs = nil_b ) ) ).

% set_empty
thf(fact_708_set__empty,axiom,
    ! [Xs: list_c] :
      ( ( ( set_c2 @ Xs )
        = bot_bot_set_c )
      = ( Xs = nil_c ) ) ).

% set_empty
thf(fact_709_set__empty,axiom,
    ! [Xs: list_a] :
      ( ( ( set_a2 @ Xs )
        = bot_bot_set_a )
      = ( Xs = nil_a ) ) ).

% set_empty
thf(fact_710_list_Osimps_I15_J,axiom,
    ! [X21: produc1359548802814378470tion_a,X222: list_P7785822056432494700tion_a] :
      ( ( set_Pr150857188848084347tion_a @ ( cons_P7206946803070396828tion_a @ X21 @ X222 ) )
      = ( insert3613951195108356022tion_a @ X21 @ ( set_Pr150857188848084347tion_a @ X222 ) ) ) ).

% list.simps(15)
thf(fact_711_list_Osimps_I15_J,axiom,
    ! [X21: product_prod_b_c,X222: list_P903359562653991662od_b_c] :
      ( ( set_Product_prod_b_c2 @ ( cons_P4529483553340347422od_b_c @ X21 @ X222 ) )
      = ( insert1747480808674937912od_b_c @ X21 @ ( set_Product_prod_b_c2 @ X222 ) ) ) ).

% list.simps(15)
thf(fact_712_list_Osimps_I15_J,axiom,
    ! [X21: b,X222: list_b] :
      ( ( set_b2 @ ( cons_b @ X21 @ X222 ) )
      = ( insert_b @ X21 @ ( set_b2 @ X222 ) ) ) ).

% list.simps(15)
thf(fact_713_list_Osimps_I15_J,axiom,
    ! [X21: c,X222: list_c] :
      ( ( set_c2 @ ( cons_c @ X21 @ X222 ) )
      = ( insert_c @ X21 @ ( set_c2 @ X222 ) ) ) ).

% list.simps(15)
thf(fact_714_list_Osimps_I15_J,axiom,
    ! [X21: a,X222: list_a] :
      ( ( set_a2 @ ( cons_a @ X21 @ X222 ) )
      = ( insert_a @ X21 @ ( set_a2 @ X222 ) ) ) ).

% list.simps(15)
thf(fact_715_empty__set,axiom,
    ( bot_bo1215043797571408818tion_a
    = ( set_Pr150857188848084347tion_a @ nil_Pr596483954593762796tion_a ) ) ).

% empty_set
thf(fact_716_empty__set,axiom,
    ( bot_bo2863795366942399540od_b_c
    = ( set_Product_prod_b_c2 @ nil_Product_prod_b_c ) ) ).

% empty_set
thf(fact_717_empty__set,axiom,
    ( bot_bot_set_b
    = ( set_b2 @ nil_b ) ) ).

% empty_set
thf(fact_718_empty__set,axiom,
    ( bot_bot_set_c
    = ( set_c2 @ nil_c ) ) ).

% empty_set
thf(fact_719_empty__set,axiom,
    ( bot_bot_set_a
    = ( set_a2 @ nil_a ) ) ).

% empty_set
thf(fact_720_ofsm__table__non__state,axiom,
    ! [Q: a,M: fsm_a_b_c,F: a > set_a,K: nat] :
      ( ~ ( member_a @ Q @ ( states_a_b_c @ M ) )
     => ( ( ofsm_table_a_b_c @ M @ F @ K @ Q )
        = bot_bot_set_a ) ) ).

% ofsm_table_non_state
thf(fact_721_ofsm__table_Osimps_I1_J,axiom,
    ! [Q: a,M: fsm_a_b_c,F: a > set_a] :
      ( ( ( member_a @ Q @ ( states_a_b_c @ M ) )
       => ( ( ofsm_table_a_b_c @ M @ F @ zero_zero_nat @ Q )
          = ( F @ Q ) ) )
      & ( ~ ( member_a @ Q @ ( states_a_b_c @ M ) )
       => ( ( ofsm_table_a_b_c @ M @ F @ zero_zero_nat @ Q )
          = bot_bot_set_a ) ) ) ).

% ofsm_table.simps(1)
thf(fact_722_h__obs__Some,axiom,
    ! [M: fsm_op7083421644242023300tion_a,Q: option_a,X3: product_prod_b_c,Y: option_a,Q3: option_a] :
      ( ( observ1716698870131812264tion_a @ M )
     => ( ( ( h_obs_1513062369990395059tion_a @ M @ Q @ X3 @ Y )
          = ( some_option_a @ Q3 ) )
        = ( ( collect_option_a
            @ ^ [Q6: option_a] : ( member757019045792887922tion_a @ ( produc1410100667027582777tion_a @ Q @ ( produc7403377568244983126tion_a @ X3 @ ( produc9011544418120257559tion_a @ Y @ Q6 ) ) ) @ ( transi3095157388973257333tion_a @ M ) ) )
          = ( insert_option_a @ Q3 @ bot_bot_set_option_a ) ) ) ) ).

% h_obs_Some
thf(fact_723_h__obs__Some,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Q3: a] :
      ( ( observable_a_b_c @ M )
     => ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
          = ( some_a @ Q3 ) )
        = ( ( collect_a
            @ ^ [Q6: a] : ( member5502040268208861279od_c_a @ ( produc5762801557034676134od_c_a @ Q @ ( produc3440865914000881661od_c_a @ X3 @ ( product_Pair_c_a @ Y @ Q6 ) ) ) @ ( transitions_a_b_c @ M ) ) )
          = ( insert_a @ Q3 @ bot_bot_set_a ) ) ) ) ).

% h_obs_Some
thf(fact_724_output__complete__alt__def__h,axiom,
    ( output3834324022317553264_a_b_c
    = ( ^ [M3: fsm_a_b_c] :
        ! [Q5: a,X5: b] :
          ( ( ( h_a_b_c @ M3 @ ( product_Pair_a_b @ Q5 @ X5 ) )
           != bot_bo2086078286244720881od_c_a )
         => ! [Y3: c] :
              ( ( member_c @ Y3 @ ( outputs_a_b_c @ M3 ) )
             => ? [Q6: a] : ( member5074992350434858958od_c_a @ ( product_Pair_c_a @ Y3 @ Q6 ) @ ( h_a_b_c @ M3 @ ( product_Pair_a_b @ Q5 @ X5 ) ) ) ) ) ) ) ).

% output_complete_alt_def_h
thf(fact_725_output__complete__alt__def__h,axiom,
    ( output5441458310227093749tion_a
    = ( ^ [M3: fsm_op2445473550699801768tion_a] :
        ! [Q5: option_a,X5: option_a] :
          ( ( ( h_opti4401739234194944175tion_a @ M3 @ ( produc9011544418120257559tion_a @ Q5 @ X5 ) )
           != bot_bo235252021745139059tion_a )
         => ! [Y3: option_a] :
              ( ( member_option_a @ Y3 @ ( output6203870471248792805tion_a @ M3 ) )
             => ? [Q6: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) @ ( h_opti4401739234194944175tion_a @ M3 @ ( produc9011544418120257559tion_a @ Q5 @ X5 ) ) ) ) ) ) ) ).

% output_complete_alt_def_h
thf(fact_726_completely__specified__alt__def__h,axiom,
    ( comple6900478119722646120_a_b_c
    = ( ^ [M3: fsm_a_b_c] :
        ! [X5: a] :
          ( ( member_a @ X5 @ ( states_a_b_c @ M3 ) )
         => ! [Y3: b] :
              ( ( member_b @ Y3 @ ( inputs_a_b_c @ M3 ) )
             => ( ( h_a_b_c @ M3 @ ( product_Pair_a_b @ X5 @ Y3 ) )
               != bot_bo2086078286244720881od_c_a ) ) ) ) ) ).

% completely_specified_alt_def_h
thf(fact_727_ofsm__table_Opelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a > set_a,Xb: nat,Xc: a,Y: set_a] :
      ( ( ( ofsm_table_a_b_c @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( accp_P4445291940695893782_nat_a @ ofsm_table_rel_a_b_c @ ( produc5808246683441043325_nat_a @ X3 @ ( produc998444283466466305_nat_a @ Xa @ ( product_Pair_nat_a @ Xb @ Xc ) ) ) )
       => ( ( ( Xb = zero_zero_nat )
           => ( ( ( ( member_a @ Xc @ ( states_a_b_c @ X3 ) )
                 => ( Y
                    = ( Xa @ Xc ) ) )
                & ( ~ ( member_a @ Xc @ ( states_a_b_c @ X3 ) )
                 => ( Y = bot_bot_set_a ) ) )
             => ~ ( accp_P4445291940695893782_nat_a @ ofsm_table_rel_a_b_c @ ( produc5808246683441043325_nat_a @ X3 @ ( produc998444283466466305_nat_a @ Xa @ ( product_Pair_nat_a @ zero_zero_nat @ Xc ) ) ) ) ) )
         => ~ ! [K3: nat] :
                ( ( Xb
                  = ( suc @ K3 ) )
               => ( ( Y
                    = ( collect_a
                      @ ^ [Q6: a] :
                          ( ( member_a @ Q6 @ ( ofsm_table_a_b_c @ X3 @ Xa @ K3 @ Xc ) )
                          & ! [X5: b] :
                              ( ( member_b @ X5 @ ( inputs_a_b_c @ X3 ) )
                             => ! [Y3: c] :
                                  ( ( member_c @ Y3 @ ( outputs_a_b_c @ X3 ) )
                                 => ( case_option_o_a
                                    @ ( ( h_obs_a_b_c @ X3 @ Q6 @ X5 @ Y3 )
                                      = none_a )
                                    @ ^ [QT: a] :
                                        ( case_option_o_a @ $false
                                        @ ^ [QT2: a] :
                                            ( ( ofsm_table_a_b_c @ X3 @ Xa @ K3 @ QT )
                                            = ( ofsm_table_a_b_c @ X3 @ Xa @ K3 @ QT2 ) )
                                        @ ( h_obs_a_b_c @ X3 @ Q6 @ X5 @ Y3 ) )
                                    @ ( h_obs_a_b_c @ X3 @ Xc @ X5 @ Y3 ) ) ) ) ) ) )
                 => ~ ( accp_P4445291940695893782_nat_a @ ofsm_table_rel_a_b_c @ ( produc5808246683441043325_nat_a @ X3 @ ( produc998444283466466305_nat_a @ Xa @ ( product_Pair_nat_a @ ( suc @ K3 ) @ Xc ) ) ) ) ) ) ) ) ) ).

% ofsm_table.pelims
thf(fact_728_n__lists__Nil,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( n_list8445877530053032436tion_a @ N @ nil_Pr596483954593762796tion_a )
          = ( cons_l4387309880990760226tion_a @ nil_Pr596483954593762796tion_a @ nil_li683225626544421234tion_a ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( n_list8445877530053032436tion_a @ N @ nil_Pr596483954593762796tion_a )
          = nil_li683225626544421234tion_a ) ) ) ).

% n_lists_Nil
thf(fact_729_n__lists__Nil,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( n_list5224936925692304502od_b_c @ N @ nil_Product_prod_b_c )
          = ( cons_l342771267123639716od_b_c @ nil_Product_prod_b_c @ nil_li8071162985807626740od_b_c ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( n_list5224936925692304502od_b_c @ N @ nil_Product_prod_b_c )
          = nil_li8071162985807626740od_b_c ) ) ) ).

% n_lists_Nil
thf(fact_730_n__lists__Nil,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( n_lists_b @ N @ nil_b )
          = ( cons_list_b @ nil_b @ nil_list_b ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( n_lists_b @ N @ nil_b )
          = nil_list_b ) ) ) ).

% n_lists_Nil
thf(fact_731_n__lists__Nil,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( n_lists_c @ N @ nil_c )
          = ( cons_list_c @ nil_c @ nil_list_c ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( n_lists_c @ N @ nil_c )
          = nil_list_c ) ) ) ).

% n_lists_Nil
thf(fact_732_n__lists__Nil,axiom,
    ! [N: nat] :
      ( ( ( N = zero_zero_nat )
       => ( ( n_lists_a @ N @ nil_a )
          = ( cons_list_a @ nil_a @ nil_list_a ) ) )
      & ( ( N != zero_zero_nat )
       => ( ( n_lists_a @ N @ nil_a )
          = nil_list_a ) ) ) ).

% n_lists_Nil
thf(fact_733_Diff__insert0,axiom,
    ! [X3: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a,B5: set_Pr165121870232099142tion_a] :
      ( ~ ( member5139186223151194895tion_a @ X3 @ A4 )
     => ( ( minus_2047467904157042861tion_a @ A4 @ ( insert3613951195108356022tion_a @ X3 @ B5 ) )
        = ( minus_2047467904157042861tion_a @ A4 @ B5 ) ) ) ).

% Diff_insert0
thf(fact_734_Diff__insert0,axiom,
    ! [X3: a,A4: set_a,B5: set_a] :
      ( ~ ( member_a @ X3 @ A4 )
     => ( ( minus_minus_set_a @ A4 @ ( insert_a @ X3 @ B5 ) )
        = ( minus_minus_set_a @ A4 @ B5 ) ) ) ).

% Diff_insert0
thf(fact_735_Diff__insert0,axiom,
    ! [X3: c,A4: set_c,B5: set_c] :
      ( ~ ( member_c @ X3 @ A4 )
     => ( ( minus_minus_set_c @ A4 @ ( insert_c @ X3 @ B5 ) )
        = ( minus_minus_set_c @ A4 @ B5 ) ) ) ).

% Diff_insert0
thf(fact_736_Diff__insert0,axiom,
    ! [X3: product_prod_b_c,A4: set_Product_prod_b_c,B5: set_Product_prod_b_c] :
      ( ~ ( member7862447941013992593od_b_c @ X3 @ A4 )
     => ( ( minus_6323455999294890031od_b_c @ A4 @ ( insert1747480808674937912od_b_c @ X3 @ B5 ) )
        = ( minus_6323455999294890031od_b_c @ A4 @ B5 ) ) ) ).

% Diff_insert0
thf(fact_737_Diff__insert0,axiom,
    ! [X3: b,A4: set_b,B5: set_b] :
      ( ~ ( member_b @ X3 @ A4 )
     => ( ( minus_minus_set_b @ A4 @ ( insert_b @ X3 @ B5 ) )
        = ( minus_minus_set_b @ A4 @ B5 ) ) ) ).

% Diff_insert0
thf(fact_738_Diff__iff,axiom,
    ! [C2: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a,B5: set_Pr165121870232099142tion_a] :
      ( ( member5139186223151194895tion_a @ C2 @ ( minus_2047467904157042861tion_a @ A4 @ B5 ) )
      = ( ( member5139186223151194895tion_a @ C2 @ A4 )
        & ~ ( member5139186223151194895tion_a @ C2 @ B5 ) ) ) ).

% Diff_iff
thf(fact_739_Diff__iff,axiom,
    ! [C2: a,A4: set_a,B5: set_a] :
      ( ( member_a @ C2 @ ( minus_minus_set_a @ A4 @ B5 ) )
      = ( ( member_a @ C2 @ A4 )
        & ~ ( member_a @ C2 @ B5 ) ) ) ).

% Diff_iff
thf(fact_740_Diff__iff,axiom,
    ! [C2: c,A4: set_c,B5: set_c] :
      ( ( member_c @ C2 @ ( minus_minus_set_c @ A4 @ B5 ) )
      = ( ( member_c @ C2 @ A4 )
        & ~ ( member_c @ C2 @ B5 ) ) ) ).

% Diff_iff
thf(fact_741_Diff__iff,axiom,
    ! [C2: product_prod_b_c,A4: set_Product_prod_b_c,B5: set_Product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ C2 @ ( minus_6323455999294890031od_b_c @ A4 @ B5 ) )
      = ( ( member7862447941013992593od_b_c @ C2 @ A4 )
        & ~ ( member7862447941013992593od_b_c @ C2 @ B5 ) ) ) ).

% Diff_iff
thf(fact_742_Diff__iff,axiom,
    ! [C2: b,A4: set_b,B5: set_b] :
      ( ( member_b @ C2 @ ( minus_minus_set_b @ A4 @ B5 ) )
      = ( ( member_b @ C2 @ A4 )
        & ~ ( member_b @ C2 @ B5 ) ) ) ).

% Diff_iff
thf(fact_743_DiffI,axiom,
    ! [C2: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a,B5: set_Pr165121870232099142tion_a] :
      ( ( member5139186223151194895tion_a @ C2 @ A4 )
     => ( ~ ( member5139186223151194895tion_a @ C2 @ B5 )
       => ( member5139186223151194895tion_a @ C2 @ ( minus_2047467904157042861tion_a @ A4 @ B5 ) ) ) ) ).

% DiffI
thf(fact_744_DiffI,axiom,
    ! [C2: a,A4: set_a,B5: set_a] :
      ( ( member_a @ C2 @ A4 )
     => ( ~ ( member_a @ C2 @ B5 )
       => ( member_a @ C2 @ ( minus_minus_set_a @ A4 @ B5 ) ) ) ) ).

% DiffI
thf(fact_745_DiffI,axiom,
    ! [C2: c,A4: set_c,B5: set_c] :
      ( ( member_c @ C2 @ A4 )
     => ( ~ ( member_c @ C2 @ B5 )
       => ( member_c @ C2 @ ( minus_minus_set_c @ A4 @ B5 ) ) ) ) ).

% DiffI
thf(fact_746_DiffI,axiom,
    ! [C2: product_prod_b_c,A4: set_Product_prod_b_c,B5: set_Product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ C2 @ A4 )
     => ( ~ ( member7862447941013992593od_b_c @ C2 @ B5 )
       => ( member7862447941013992593od_b_c @ C2 @ ( minus_6323455999294890031od_b_c @ A4 @ B5 ) ) ) ) ).

% DiffI
thf(fact_747_DiffI,axiom,
    ! [C2: b,A4: set_b,B5: set_b] :
      ( ( member_b @ C2 @ A4 )
     => ( ~ ( member_b @ C2 @ B5 )
       => ( member_b @ C2 @ ( minus_minus_set_b @ A4 @ B5 ) ) ) ) ).

% DiffI
thf(fact_748_insert__Diff1,axiom,
    ! [X3: produc1359548802814378470tion_a,B5: set_Pr165121870232099142tion_a,A4: set_Pr165121870232099142tion_a] :
      ( ( member5139186223151194895tion_a @ X3 @ B5 )
     => ( ( minus_2047467904157042861tion_a @ ( insert3613951195108356022tion_a @ X3 @ A4 ) @ B5 )
        = ( minus_2047467904157042861tion_a @ A4 @ B5 ) ) ) ).

% insert_Diff1
thf(fact_749_insert__Diff1,axiom,
    ! [X3: a,B5: set_a,A4: set_a] :
      ( ( member_a @ X3 @ B5 )
     => ( ( minus_minus_set_a @ ( insert_a @ X3 @ A4 ) @ B5 )
        = ( minus_minus_set_a @ A4 @ B5 ) ) ) ).

% insert_Diff1
thf(fact_750_insert__Diff1,axiom,
    ! [X3: c,B5: set_c,A4: set_c] :
      ( ( member_c @ X3 @ B5 )
     => ( ( minus_minus_set_c @ ( insert_c @ X3 @ A4 ) @ B5 )
        = ( minus_minus_set_c @ A4 @ B5 ) ) ) ).

% insert_Diff1
thf(fact_751_insert__Diff1,axiom,
    ! [X3: product_prod_b_c,B5: set_Product_prod_b_c,A4: set_Product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ X3 @ B5 )
     => ( ( minus_6323455999294890031od_b_c @ ( insert1747480808674937912od_b_c @ X3 @ A4 ) @ B5 )
        = ( minus_6323455999294890031od_b_c @ A4 @ B5 ) ) ) ).

% insert_Diff1
thf(fact_752_insert__Diff1,axiom,
    ! [X3: b,B5: set_b,A4: set_b] :
      ( ( member_b @ X3 @ B5 )
     => ( ( minus_minus_set_b @ ( insert_b @ X3 @ A4 ) @ B5 )
        = ( minus_minus_set_b @ A4 @ B5 ) ) ) ).

% insert_Diff1
thf(fact_753_set__diff__eq,axiom,
    ( minus_2047467904157042861tion_a
    = ( ^ [A6: set_Pr165121870232099142tion_a,B6: set_Pr165121870232099142tion_a] :
          ( collec5181485912584638289tion_a
          @ ^ [X5: produc1359548802814378470tion_a] :
              ( ( member5139186223151194895tion_a @ X5 @ A6 )
              & ~ ( member5139186223151194895tion_a @ X5 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_754_set__diff__eq,axiom,
    ( minus_minus_set_a
    = ( ^ [A6: set_a,B6: set_a] :
          ( collect_a
          @ ^ [X5: a] :
              ( ( member_a @ X5 @ A6 )
              & ~ ( member_a @ X5 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_755_set__diff__eq,axiom,
    ( minus_minus_set_c
    = ( ^ [A6: set_c,B6: set_c] :
          ( collect_c
          @ ^ [X5: c] :
              ( ( member_c @ X5 @ A6 )
              & ~ ( member_c @ X5 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_756_set__diff__eq,axiom,
    ( minus_6323455999294890031od_b_c
    = ( ^ [A6: set_Product_prod_b_c,B6: set_Product_prod_b_c] :
          ( collec548942224018234067od_b_c
          @ ^ [X5: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ X5 @ A6 )
              & ~ ( member7862447941013992593od_b_c @ X5 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_757_set__diff__eq,axiom,
    ( minus_minus_set_b
    = ( ^ [A6: set_b,B6: set_b] :
          ( collect_b
          @ ^ [X5: b] :
              ( ( member_b @ X5 @ A6 )
              & ~ ( member_b @ X5 @ B6 ) ) ) ) ) ).

% set_diff_eq
thf(fact_758_minus__set__def,axiom,
    ( minus_2047467904157042861tion_a
    = ( ^ [A6: set_Pr165121870232099142tion_a,B6: set_Pr165121870232099142tion_a] :
          ( collec5181485912584638289tion_a
          @ ( minus_8587600329092878448on_a_o
            @ ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ A6 )
            @ ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_759_minus__set__def,axiom,
    ( minus_minus_set_a
    = ( ^ [A6: set_a,B6: set_a] :
          ( collect_a
          @ ( minus_minus_a_o
            @ ^ [X5: a] : ( member_a @ X5 @ A6 )
            @ ^ [X5: a] : ( member_a @ X5 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_760_minus__set__def,axiom,
    ( minus_minus_set_c
    = ( ^ [A6: set_c,B6: set_c] :
          ( collect_c
          @ ( minus_minus_c_o
            @ ^ [X5: c] : ( member_c @ X5 @ A6 )
            @ ^ [X5: c] : ( member_c @ X5 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_761_minus__set__def,axiom,
    ( minus_6323455999294890031od_b_c
    = ( ^ [A6: set_Product_prod_b_c,B6: set_Product_prod_b_c] :
          ( collec548942224018234067od_b_c
          @ ( minus_454401561809409902_b_c_o
            @ ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ A6 )
            @ ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_762_minus__set__def,axiom,
    ( minus_minus_set_b
    = ( ^ [A6: set_b,B6: set_b] :
          ( collect_b
          @ ( minus_minus_b_o
            @ ^ [X5: b] : ( member_b @ X5 @ A6 )
            @ ^ [X5: b] : ( member_b @ X5 @ B6 ) ) ) ) ) ).

% minus_set_def
thf(fact_763_DiffD2,axiom,
    ! [C2: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a,B5: set_Pr165121870232099142tion_a] :
      ( ( member5139186223151194895tion_a @ C2 @ ( minus_2047467904157042861tion_a @ A4 @ B5 ) )
     => ~ ( member5139186223151194895tion_a @ C2 @ B5 ) ) ).

% DiffD2
thf(fact_764_DiffD2,axiom,
    ! [C2: a,A4: set_a,B5: set_a] :
      ( ( member_a @ C2 @ ( minus_minus_set_a @ A4 @ B5 ) )
     => ~ ( member_a @ C2 @ B5 ) ) ).

% DiffD2
thf(fact_765_DiffD2,axiom,
    ! [C2: c,A4: set_c,B5: set_c] :
      ( ( member_c @ C2 @ ( minus_minus_set_c @ A4 @ B5 ) )
     => ~ ( member_c @ C2 @ B5 ) ) ).

% DiffD2
thf(fact_766_DiffD2,axiom,
    ! [C2: product_prod_b_c,A4: set_Product_prod_b_c,B5: set_Product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ C2 @ ( minus_6323455999294890031od_b_c @ A4 @ B5 ) )
     => ~ ( member7862447941013992593od_b_c @ C2 @ B5 ) ) ).

% DiffD2
thf(fact_767_DiffD2,axiom,
    ! [C2: b,A4: set_b,B5: set_b] :
      ( ( member_b @ C2 @ ( minus_minus_set_b @ A4 @ B5 ) )
     => ~ ( member_b @ C2 @ B5 ) ) ).

% DiffD2
thf(fact_768_DiffD1,axiom,
    ! [C2: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a,B5: set_Pr165121870232099142tion_a] :
      ( ( member5139186223151194895tion_a @ C2 @ ( minus_2047467904157042861tion_a @ A4 @ B5 ) )
     => ( member5139186223151194895tion_a @ C2 @ A4 ) ) ).

% DiffD1
thf(fact_769_DiffD1,axiom,
    ! [C2: a,A4: set_a,B5: set_a] :
      ( ( member_a @ C2 @ ( minus_minus_set_a @ A4 @ B5 ) )
     => ( member_a @ C2 @ A4 ) ) ).

% DiffD1
thf(fact_770_DiffD1,axiom,
    ! [C2: c,A4: set_c,B5: set_c] :
      ( ( member_c @ C2 @ ( minus_minus_set_c @ A4 @ B5 ) )
     => ( member_c @ C2 @ A4 ) ) ).

% DiffD1
thf(fact_771_DiffD1,axiom,
    ! [C2: product_prod_b_c,A4: set_Product_prod_b_c,B5: set_Product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ C2 @ ( minus_6323455999294890031od_b_c @ A4 @ B5 ) )
     => ( member7862447941013992593od_b_c @ C2 @ A4 ) ) ).

% DiffD1
thf(fact_772_DiffD1,axiom,
    ! [C2: b,A4: set_b,B5: set_b] :
      ( ( member_b @ C2 @ ( minus_minus_set_b @ A4 @ B5 ) )
     => ( member_b @ C2 @ A4 ) ) ).

% DiffD1
thf(fact_773_DiffE,axiom,
    ! [C2: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a,B5: set_Pr165121870232099142tion_a] :
      ( ( member5139186223151194895tion_a @ C2 @ ( minus_2047467904157042861tion_a @ A4 @ B5 ) )
     => ~ ( ( member5139186223151194895tion_a @ C2 @ A4 )
         => ( member5139186223151194895tion_a @ C2 @ B5 ) ) ) ).

% DiffE
thf(fact_774_DiffE,axiom,
    ! [C2: a,A4: set_a,B5: set_a] :
      ( ( member_a @ C2 @ ( minus_minus_set_a @ A4 @ B5 ) )
     => ~ ( ( member_a @ C2 @ A4 )
         => ( member_a @ C2 @ B5 ) ) ) ).

% DiffE
thf(fact_775_DiffE,axiom,
    ! [C2: c,A4: set_c,B5: set_c] :
      ( ( member_c @ C2 @ ( minus_minus_set_c @ A4 @ B5 ) )
     => ~ ( ( member_c @ C2 @ A4 )
         => ( member_c @ C2 @ B5 ) ) ) ).

% DiffE
thf(fact_776_DiffE,axiom,
    ! [C2: product_prod_b_c,A4: set_Product_prod_b_c,B5: set_Product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ C2 @ ( minus_6323455999294890031od_b_c @ A4 @ B5 ) )
     => ~ ( ( member7862447941013992593od_b_c @ C2 @ A4 )
         => ( member7862447941013992593od_b_c @ C2 @ B5 ) ) ) ).

% DiffE
thf(fact_777_DiffE,axiom,
    ! [C2: b,A4: set_b,B5: set_b] :
      ( ( member_b @ C2 @ ( minus_minus_set_b @ A4 @ B5 ) )
     => ~ ( ( member_b @ C2 @ A4 )
         => ( member_b @ C2 @ B5 ) ) ) ).

% DiffE
thf(fact_778_insert__Diff__if,axiom,
    ! [X3: produc1359548802814378470tion_a,B5: set_Pr165121870232099142tion_a,A4: set_Pr165121870232099142tion_a] :
      ( ( ( member5139186223151194895tion_a @ X3 @ B5 )
       => ( ( minus_2047467904157042861tion_a @ ( insert3613951195108356022tion_a @ X3 @ A4 ) @ B5 )
          = ( minus_2047467904157042861tion_a @ A4 @ B5 ) ) )
      & ( ~ ( member5139186223151194895tion_a @ X3 @ B5 )
       => ( ( minus_2047467904157042861tion_a @ ( insert3613951195108356022tion_a @ X3 @ A4 ) @ B5 )
          = ( insert3613951195108356022tion_a @ X3 @ ( minus_2047467904157042861tion_a @ A4 @ B5 ) ) ) ) ) ).

% insert_Diff_if
thf(fact_779_insert__Diff__if,axiom,
    ! [X3: a,B5: set_a,A4: set_a] :
      ( ( ( member_a @ X3 @ B5 )
       => ( ( minus_minus_set_a @ ( insert_a @ X3 @ A4 ) @ B5 )
          = ( minus_minus_set_a @ A4 @ B5 ) ) )
      & ( ~ ( member_a @ X3 @ B5 )
       => ( ( minus_minus_set_a @ ( insert_a @ X3 @ A4 ) @ B5 )
          = ( insert_a @ X3 @ ( minus_minus_set_a @ A4 @ B5 ) ) ) ) ) ).

% insert_Diff_if
thf(fact_780_insert__Diff__if,axiom,
    ! [X3: c,B5: set_c,A4: set_c] :
      ( ( ( member_c @ X3 @ B5 )
       => ( ( minus_minus_set_c @ ( insert_c @ X3 @ A4 ) @ B5 )
          = ( minus_minus_set_c @ A4 @ B5 ) ) )
      & ( ~ ( member_c @ X3 @ B5 )
       => ( ( minus_minus_set_c @ ( insert_c @ X3 @ A4 ) @ B5 )
          = ( insert_c @ X3 @ ( minus_minus_set_c @ A4 @ B5 ) ) ) ) ) ).

% insert_Diff_if
thf(fact_781_insert__Diff__if,axiom,
    ! [X3: product_prod_b_c,B5: set_Product_prod_b_c,A4: set_Product_prod_b_c] :
      ( ( ( member7862447941013992593od_b_c @ X3 @ B5 )
       => ( ( minus_6323455999294890031od_b_c @ ( insert1747480808674937912od_b_c @ X3 @ A4 ) @ B5 )
          = ( minus_6323455999294890031od_b_c @ A4 @ B5 ) ) )
      & ( ~ ( member7862447941013992593od_b_c @ X3 @ B5 )
       => ( ( minus_6323455999294890031od_b_c @ ( insert1747480808674937912od_b_c @ X3 @ A4 ) @ B5 )
          = ( insert1747480808674937912od_b_c @ X3 @ ( minus_6323455999294890031od_b_c @ A4 @ B5 ) ) ) ) ) ).

% insert_Diff_if
thf(fact_782_insert__Diff__if,axiom,
    ! [X3: b,B5: set_b,A4: set_b] :
      ( ( ( member_b @ X3 @ B5 )
       => ( ( minus_minus_set_b @ ( insert_b @ X3 @ A4 ) @ B5 )
          = ( minus_minus_set_b @ A4 @ B5 ) ) )
      & ( ~ ( member_b @ X3 @ B5 )
       => ( ( minus_minus_set_b @ ( insert_b @ X3 @ A4 ) @ B5 )
          = ( insert_b @ X3 @ ( minus_minus_set_b @ A4 @ B5 ) ) ) ) ) ).

% insert_Diff_if
thf(fact_783_insert__compr,axiom,
    ( insert3613951195108356022tion_a
    = ( ^ [A5: produc1359548802814378470tion_a,B6: set_Pr165121870232099142tion_a] :
          ( collec5181485912584638289tion_a
          @ ^ [X5: produc1359548802814378470tion_a] :
              ( ( X5 = A5 )
              | ( member5139186223151194895tion_a @ X5 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_784_insert__compr,axiom,
    ( insert_a
    = ( ^ [A5: a,B6: set_a] :
          ( collect_a
          @ ^ [X5: a] :
              ( ( X5 = A5 )
              | ( member_a @ X5 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_785_insert__compr,axiom,
    ( insert_c
    = ( ^ [A5: c,B6: set_c] :
          ( collect_c
          @ ^ [X5: c] :
              ( ( X5 = A5 )
              | ( member_c @ X5 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_786_insert__compr,axiom,
    ( insert1747480808674937912od_b_c
    = ( ^ [A5: product_prod_b_c,B6: set_Product_prod_b_c] :
          ( collec548942224018234067od_b_c
          @ ^ [X5: product_prod_b_c] :
              ( ( X5 = A5 )
              | ( member7862447941013992593od_b_c @ X5 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_787_insert__compr,axiom,
    ( insert_b
    = ( ^ [A5: b,B6: set_b] :
          ( collect_b
          @ ^ [X5: b] :
              ( ( X5 = A5 )
              | ( member_b @ X5 @ B6 ) ) ) ) ) ).

% insert_compr
thf(fact_788_Set_Ofilter__def,axiom,
    ( filter8754926412232404503tion_a
    = ( ^ [P3: produc1359548802814378470tion_a > $o,A6: set_Pr165121870232099142tion_a] :
          ( collec5181485912584638289tion_a
          @ ^ [A5: produc1359548802814378470tion_a] :
              ( ( member5139186223151194895tion_a @ A5 @ A6 )
              & ( P3 @ A5 ) ) ) ) ) ).

% Set.filter_def
thf(fact_789_Set_Ofilter__def,axiom,
    ( filter_a
    = ( ^ [P3: a > $o,A6: set_a] :
          ( collect_a
          @ ^ [A5: a] :
              ( ( member_a @ A5 @ A6 )
              & ( P3 @ A5 ) ) ) ) ) ).

% Set.filter_def
thf(fact_790_Set_Ofilter__def,axiom,
    ( filter_c
    = ( ^ [P3: c > $o,A6: set_c] :
          ( collect_c
          @ ^ [A5: c] :
              ( ( member_c @ A5 @ A6 )
              & ( P3 @ A5 ) ) ) ) ) ).

% Set.filter_def
thf(fact_791_Set_Ofilter__def,axiom,
    ( filter1593123217884506009od_b_c
    = ( ^ [P3: product_prod_b_c > $o,A6: set_Product_prod_b_c] :
          ( collec548942224018234067od_b_c
          @ ^ [A5: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ A5 @ A6 )
              & ( P3 @ A5 ) ) ) ) ) ).

% Set.filter_def
thf(fact_792_Set_Ofilter__def,axiom,
    ( filter_b
    = ( ^ [P3: b > $o,A6: set_b] :
          ( collect_b
          @ ^ [A5: b] :
              ( ( member_b @ A5 @ A6 )
              & ( P3 @ A5 ) ) ) ) ) ).

% Set.filter_def
thf(fact_793_Diff__insert__absorb,axiom,
    ! [X3: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a] :
      ( ~ ( member5139186223151194895tion_a @ X3 @ A4 )
     => ( ( minus_2047467904157042861tion_a @ ( insert3613951195108356022tion_a @ X3 @ A4 ) @ ( insert3613951195108356022tion_a @ X3 @ bot_bo1215043797571408818tion_a ) )
        = A4 ) ) ).

% Diff_insert_absorb
thf(fact_794_Diff__insert__absorb,axiom,
    ! [X3: a,A4: set_a] :
      ( ~ ( member_a @ X3 @ A4 )
     => ( ( minus_minus_set_a @ ( insert_a @ X3 @ A4 ) @ ( insert_a @ X3 @ bot_bot_set_a ) )
        = A4 ) ) ).

% Diff_insert_absorb
thf(fact_795_Diff__insert__absorb,axiom,
    ! [X3: c,A4: set_c] :
      ( ~ ( member_c @ X3 @ A4 )
     => ( ( minus_minus_set_c @ ( insert_c @ X3 @ A4 ) @ ( insert_c @ X3 @ bot_bot_set_c ) )
        = A4 ) ) ).

% Diff_insert_absorb
thf(fact_796_Diff__insert__absorb,axiom,
    ! [X3: product_prod_b_c,A4: set_Product_prod_b_c] :
      ( ~ ( member7862447941013992593od_b_c @ X3 @ A4 )
     => ( ( minus_6323455999294890031od_b_c @ ( insert1747480808674937912od_b_c @ X3 @ A4 ) @ ( insert1747480808674937912od_b_c @ X3 @ bot_bo2863795366942399540od_b_c ) )
        = A4 ) ) ).

% Diff_insert_absorb
thf(fact_797_Diff__insert__absorb,axiom,
    ! [X3: b,A4: set_b] :
      ( ~ ( member_b @ X3 @ A4 )
     => ( ( minus_minus_set_b @ ( insert_b @ X3 @ A4 ) @ ( insert_b @ X3 @ bot_bot_set_b ) )
        = A4 ) ) ).

% Diff_insert_absorb
thf(fact_798_insert__Diff,axiom,
    ! [A: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a] :
      ( ( member5139186223151194895tion_a @ A @ A4 )
     => ( ( insert3613951195108356022tion_a @ A @ ( minus_2047467904157042861tion_a @ A4 @ ( insert3613951195108356022tion_a @ A @ bot_bo1215043797571408818tion_a ) ) )
        = A4 ) ) ).

% insert_Diff
thf(fact_799_insert__Diff,axiom,
    ! [A: a,A4: set_a] :
      ( ( member_a @ A @ A4 )
     => ( ( insert_a @ A @ ( minus_minus_set_a @ A4 @ ( insert_a @ A @ bot_bot_set_a ) ) )
        = A4 ) ) ).

% insert_Diff
thf(fact_800_insert__Diff,axiom,
    ! [A: c,A4: set_c] :
      ( ( member_c @ A @ A4 )
     => ( ( insert_c @ A @ ( minus_minus_set_c @ A4 @ ( insert_c @ A @ bot_bot_set_c ) ) )
        = A4 ) ) ).

% insert_Diff
thf(fact_801_insert__Diff,axiom,
    ! [A: product_prod_b_c,A4: set_Product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ A @ A4 )
     => ( ( insert1747480808674937912od_b_c @ A @ ( minus_6323455999294890031od_b_c @ A4 @ ( insert1747480808674937912od_b_c @ A @ bot_bo2863795366942399540od_b_c ) ) )
        = A4 ) ) ).

% insert_Diff
thf(fact_802_insert__Diff,axiom,
    ! [A: b,A4: set_b] :
      ( ( member_b @ A @ A4 )
     => ( ( insert_b @ A @ ( minus_minus_set_b @ A4 @ ( insert_b @ A @ bot_bot_set_b ) ) )
        = A4 ) ) ).

% insert_Diff
thf(fact_803_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( n_list8445877530053032436tion_a @ zero_zero_nat @ Xs )
      = ( cons_l4387309880990760226tion_a @ nil_Pr596483954593762796tion_a @ nil_li683225626544421234tion_a ) ) ).

% n_lists.simps(1)
thf(fact_804_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( n_list5224936925692304502od_b_c @ zero_zero_nat @ Xs )
      = ( cons_l342771267123639716od_b_c @ nil_Product_prod_b_c @ nil_li8071162985807626740od_b_c ) ) ).

% n_lists.simps(1)
thf(fact_805_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_b] :
      ( ( n_lists_b @ zero_zero_nat @ Xs )
      = ( cons_list_b @ nil_b @ nil_list_b ) ) ).

% n_lists.simps(1)
thf(fact_806_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_c] :
      ( ( n_lists_c @ zero_zero_nat @ Xs )
      = ( cons_list_c @ nil_c @ nil_list_c ) ) ).

% n_lists.simps(1)
thf(fact_807_n__lists_Osimps_I1_J,axiom,
    ! [Xs: list_a] :
      ( ( n_lists_a @ zero_zero_nat @ Xs )
      = ( cons_list_a @ nil_a @ nil_list_a ) ) ).

% n_lists.simps(1)
thf(fact_808_set__as__map__elem,axiom,
    ! [Y: c,Xs: set_Product_prod_b_c,X3: b] :
      ( ( member_c @ Y
        @ ( case_o8058779280418240651_set_c @ bot_bot_set_c
          @ ^ [Xs5: set_c] : Xs5
          @ ( set_as_map_b_c @ Xs @ X3 ) ) )
     => ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Xs ) ) ).

% set_as_map_elem
thf(fact_809_set__as__map__elem,axiom,
    ! [Y: produc3509355604313844263tion_a,Xs: set_Pr165121870232099142tion_a,X3: product_prod_b_c] :
      ( ( member5498148017924304208tion_a @ Y
        @ ( case_o1074465910202387531tion_a @ bot_bo235252021745139059tion_a
          @ ^ [Xs5: set_Pr7585778909603769095tion_a] : Xs5
          @ ( set_as8199280312078529077tion_a @ Xs @ X3 ) ) )
     => ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Xs ) ) ).

% set_as_map_elem
thf(fact_810_set__as__map__elem,axiom,
    ! [Y: option_a,Xs: set_Pr7585778909603769095tion_a,X3: option_a] :
      ( ( member_option_a @ Y
        @ ( case_o6845752758891366667tion_a @ bot_bot_set_option_a
          @ ^ [Xs5: set_option_a] : Xs5
          @ ( set_as4564133134819314422tion_a @ Xs @ X3 ) ) )
     => ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Xs ) ) ).

% set_as_map_elem
thf(fact_811_set__as__map__containment,axiom,
    ! [X3: b,Y: c,Zs2: set_Product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Zs2 )
     => ( member_c @ Y
        @ ( case_o8058779280418240651_set_c @ bot_bot_set_c
          @ ^ [Xs5: set_c] : Xs5
          @ ( set_as_map_b_c @ Zs2 @ X3 ) ) ) ) ).

% set_as_map_containment
thf(fact_812_set__as__map__containment,axiom,
    ! [X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Zs2: set_Pr165121870232099142tion_a] :
      ( ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Zs2 )
     => ( member5498148017924304208tion_a @ Y
        @ ( case_o1074465910202387531tion_a @ bot_bo235252021745139059tion_a
          @ ^ [Xs5: set_Pr7585778909603769095tion_a] : Xs5
          @ ( set_as8199280312078529077tion_a @ Zs2 @ X3 ) ) ) ) ).

% set_as_map_containment
thf(fact_813_set__as__map__containment,axiom,
    ! [X3: option_a,Y: option_a,Zs2: set_Pr7585778909603769095tion_a] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Zs2 )
     => ( member_option_a @ Y
        @ ( case_o6845752758891366667tion_a @ bot_bot_set_option_a
          @ ^ [Xs5: set_option_a] : Xs5
          @ ( set_as4564133134819314422tion_a @ Zs2 @ X3 ) ) ) ) ).

% set_as_map_containment
thf(fact_814_option_Osize__gen_I1_J,axiom,
    ! [X3: a > nat] :
      ( ( size_option_a @ X3 @ none_a )
      = ( suc @ zero_zero_nat ) ) ).

% option.size_gen(1)
thf(fact_815_option_Osize__gen_I1_J,axiom,
    ! [X3: produc1359548802814378470tion_a > nat] :
      ( ( size_o3460327842161311881tion_a @ X3 @ none_P2271573532998059335tion_a )
      = ( suc @ zero_zero_nat ) ) ).

% option.size_gen(1)
thf(fact_816_defined__inputs__set,axiom,
    ( defined_inputs_a_b_c
    = ( ^ [M3: fsm_a_b_c,Q5: a] :
          ( collect_b
          @ ^ [X5: b] :
              ( ( member_b @ X5 @ ( inputs_a_b_c @ M3 ) )
              & ( ( h_a_b_c @ M3 @ ( product_Pair_a_b @ Q5 @ X5 ) )
               != bot_bo2086078286244720881od_c_a ) ) ) ) ) ).

% defined_inputs_set
thf(fact_817_completely__specified__state__alt__def__h,axiom,
    ( comple2039557650379672579_a_b_c
    = ( ^ [M3: fsm_a_b_c,Q5: a] :
        ! [X5: b] :
          ( ( member_b @ X5 @ ( inputs_a_b_c @ M3 ) )
         => ( ( h_a_b_c @ M3 @ ( product_Pair_a_b @ Q5 @ X5 ) )
           != bot_bo2086078286244720881od_c_a ) ) ) ) ).

% completely_specified_state_alt_def_h
thf(fact_818_completely__specified__states,axiom,
    ( comple6900478119722646120_a_b_c
    = ( ^ [M3: fsm_a_b_c] :
        ! [X5: a] :
          ( ( member_a @ X5 @ ( states_a_b_c @ M3 ) )
         => ( comple2039557650379672579_a_b_c @ M3 @ X5 ) ) ) ) ).

% completely_specified_states
thf(fact_819_defined__inputs_Opelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Y: set_b] :
      ( ( ( defined_inputs_a_b_c @ X3 @ Xa )
        = Y )
     => ( ( accp_P8775296850406592587_b_c_a @ define957965454157341091_a_b_c @ ( produc1330280085856475698_b_c_a @ X3 @ Xa ) )
       => ~ ( ( Y
              = ( defined_inputs_a_b_c2 @ ( h_a_b_c @ X3 ) @ ( inputs_a_b_c @ X3 ) @ Xa ) )
           => ~ ( accp_P8775296850406592587_b_c_a @ define957965454157341091_a_b_c @ ( produc1330280085856475698_b_c_a @ X3 @ Xa ) ) ) ) ) ).

% defined_inputs.pelims
thf(fact_820_defined__inputs_Osimps,axiom,
    ( defined_inputs_a_b_c
    = ( ^ [M3: fsm_a_b_c] : ( defined_inputs_a_b_c2 @ ( h_a_b_c @ M3 ) @ ( inputs_a_b_c @ M3 ) ) ) ) ).

% defined_inputs.simps
thf(fact_821_defined__inputs_Oelims,axiom,
    ! [X3: fsm_a_b_c,Xa: a,Y: set_b] :
      ( ( ( defined_inputs_a_b_c @ X3 @ Xa )
        = Y )
     => ( Y
        = ( defined_inputs_a_b_c2 @ ( h_a_b_c @ X3 ) @ ( inputs_a_b_c @ X3 ) @ Xa ) ) ) ).

% defined_inputs.elims
thf(fact_822_prefixes__snoc,axiom,
    ! [Xs: list_P7785822056432494700tion_a,X3: produc1359548802814378470tion_a] :
      ( ( prefix4527274647823915123tion_a @ ( append7143236819997180545tion_a @ Xs @ ( cons_P7206946803070396828tion_a @ X3 @ nil_Pr596483954593762796tion_a ) ) )
      = ( append6969318523410456455tion_a @ ( prefix4527274647823915123tion_a @ Xs ) @ ( cons_l4387309880990760226tion_a @ ( append7143236819997180545tion_a @ Xs @ ( cons_P7206946803070396828tion_a @ X3 @ nil_Pr596483954593762796tion_a ) ) @ nil_li683225626544421234tion_a ) ) ) ).

% prefixes_snoc
thf(fact_823_prefixes__snoc,axiom,
    ! [Xs: list_P903359562653991662od_b_c,X3: product_prod_b_c] :
      ( ( prefix1131979855692807669od_b_c @ ( append2547753245680614915od_b_c @ Xs @ ( cons_P4529483553340347422od_b_c @ X3 @ nil_Product_prod_b_c ) ) )
      = ( append6992831555715836169od_b_c @ ( prefix1131979855692807669od_b_c @ Xs ) @ ( cons_l342771267123639716od_b_c @ ( append2547753245680614915od_b_c @ Xs @ ( cons_P4529483553340347422od_b_c @ X3 @ nil_Product_prod_b_c ) ) @ nil_li8071162985807626740od_b_c ) ) ) ).

% prefixes_snoc
thf(fact_824_prefixes__snoc,axiom,
    ! [Xs: list_b,X3: b] :
      ( ( prefixes_b @ ( append_b @ Xs @ ( cons_b @ X3 @ nil_b ) ) )
      = ( append_list_b @ ( prefixes_b @ Xs ) @ ( cons_list_b @ ( append_b @ Xs @ ( cons_b @ X3 @ nil_b ) ) @ nil_list_b ) ) ) ).

% prefixes_snoc
thf(fact_825_prefixes__snoc,axiom,
    ! [Xs: list_c,X3: c] :
      ( ( prefixes_c @ ( append_c @ Xs @ ( cons_c @ X3 @ nil_c ) ) )
      = ( append_list_c @ ( prefixes_c @ Xs ) @ ( cons_list_c @ ( append_c @ Xs @ ( cons_c @ X3 @ nil_c ) ) @ nil_list_c ) ) ) ).

% prefixes_snoc
thf(fact_826_prefixes__snoc,axiom,
    ! [Xs: list_a,X3: a] :
      ( ( prefixes_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) )
      = ( append_list_a @ ( prefixes_a @ Xs ) @ ( cons_list_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) @ nil_list_a ) ) ) ).

% prefixes_snoc
thf(fact_827_completely__specified__language__extension,axiom,
    ! [M: fsm_a_b_c,Q: a,Io: list_P903359562653991662od_b_c,X3: b] :
      ( ( comple6900478119722646120_a_b_c @ M )
     => ( ( member_a @ Q @ ( states_a_b_c @ M ) )
       => ( ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q ) )
         => ( ( member_b @ X3 @ ( inputs_a_b_c @ M ) )
           => ~ ! [Y2: c] :
                  ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y2 ) @ nil_Product_prod_b_c ) ) @ ( lS_a_b_c @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_828_completely__specified__language__extension,axiom,
    ! [M: fsm_c_b_c,Q: c,Io: list_P903359562653991662od_b_c,X3: b] :
      ( ( comple8869543313244131690_c_b_c @ M )
     => ( ( member_c @ Q @ ( states_c_b_c @ M ) )
       => ( ( member6330420149250801815od_b_c @ Io @ ( lS_c_b_c @ M @ Q ) )
         => ( ( member_b @ X3 @ ( inputs_c_b_c @ M ) )
           => ~ ! [Y2: c] :
                  ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y2 ) @ nil_Product_prod_b_c ) ) @ ( lS_c_b_c @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_829_completely__specified__language__extension,axiom,
    ! [M: fsm_b_b_c,Q: b,Io: list_P903359562653991662od_b_c,X3: b] :
      ( ( comple3273324698056001001_b_b_c @ M )
     => ( ( member_b @ Q @ ( states_b_b_c @ M ) )
       => ( ( member6330420149250801815od_b_c @ Io @ ( lS_b_b_c @ M @ Q ) )
         => ( ( member_b @ X3 @ ( inputs_b_b_c @ M ) )
           => ~ ! [Y2: c] :
                  ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y2 ) @ nil_Product_prod_b_c ) ) @ ( lS_b_b_c @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_830_completely__specified__language__extension,axiom,
    ! [M: fsm_Pr8946560376811747725_c_b_c,Q: product_prod_b_c,Io: list_P903359562653991662od_b_c,X3: b] :
      ( ( comple2505282542999263186_c_b_c @ M )
     => ( ( member7862447941013992593od_b_c @ Q @ ( states8981316748681014706_c_b_c @ M ) )
       => ( ( member6330420149250801815od_b_c @ Io @ ( lS_Pro4505222411400483149_c_b_c @ M @ Q ) )
         => ( ( member_b @ X3 @ ( inputs8027086868716563467_c_b_c @ M ) )
           => ~ ! [Y2: c] :
                  ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y2 ) @ nil_Product_prod_b_c ) ) @ ( lS_Pro4505222411400483149_c_b_c @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_831_completely__specified__language__extension,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,Q: a,Io: list_P2261792721279755821tion_a,X3: option_a] :
      ( ( comple4022182702085593383tion_a @ M )
     => ( ( member_a @ Q @ ( states8949780166273740551tion_a @ M ) )
       => ( ( member3771681913024528598tion_a @ Io @ ( lS_a_o2632099069520436386tion_a @ M @ Q ) )
         => ( ( member_option_a @ X3 @ ( inputs2713695130735606624tion_a @ M ) )
           => ~ ! [Y2: option_a] :
                  ~ ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ Io @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y2 ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_a_o2632099069520436386tion_a @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_832_completely__specified__language__extension,axiom,
    ! [M: fsm_c_2940947492383665124tion_a,Q: c,Io: list_P2261792721279755821tion_a,X3: option_a] :
      ( ( comple7752756641171806761tion_a @ M )
     => ( ( member_c @ Q @ ( states3456982068505178121tion_a @ M ) )
       => ( ( member3771681913024528598tion_a @ Io @ ( lS_c_o6362673008606649764tion_a @ M @ Q ) )
         => ( ( member_option_a @ X3 @ ( inputs6444269069821820002tion_a @ M ) )
           => ~ ! [Y2: option_a] :
                  ~ ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ Io @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y2 ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_c_o6362673008606649764tion_a @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_833_completely__specified__language__extension,axiom,
    ! [M: fsm_b_4645169375850535651tion_a,Q: b,Io: list_P2261792721279755821tion_a,X3: option_a] :
      ( ( comple5887469671628700072tion_a @ M )
     => ( ( member_b @ Q @ ( states1591695098962071432tion_a @ M ) )
       => ( ( member3771681913024528598tion_a @ Io @ ( lS_b_o4497386039063543075tion_a @ M @ Q ) )
         => ( ( member_option_a @ X3 @ ( inputs4578982100278713313tion_a @ M ) )
           => ~ ! [Y2: option_a] :
                  ~ ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ Io @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y2 ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_b_o4497386039063543075tion_a @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_834_completely__specified__language__extension,axiom,
    ! [M: fsm_Pr4082893179519573580tion_a,Q: product_prod_b_c,Io: list_P2261792721279755821tion_a,X3: option_a] :
      ( ( comple4235893503568177297tion_a @ M )
     => ( ( member7862447941013992593od_b_c @ Q @ ( states4804875911183523441tion_a @ M ) )
       => ( ( member3771681913024528598tion_a @ Io @ ( lS_Pro4527773713195546892tion_a @ M @ Q ) )
         => ( ( member_option_a @ X3 @ ( inputs1861811430185560522tion_a @ M ) )
           => ~ ! [Y2: option_a] :
                  ~ ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ Io @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y2 ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_Pro4527773713195546892tion_a @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_835_completely__specified__language__extension,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,Q: a,Io: list_P7785822056432494700tion_a,X3: product_prod_b_c] :
      ( ( comple6566413409502449254tion_a @ M )
     => ( ( member_a @ Q @ ( states483080441059632198tion_a @ M ) )
       => ( ( member2632207693412262165tion_a @ Io @ ( lS_a_P1924925719573064673tion_a @ M @ Q ) )
         => ( ( member7862447941013992593od_b_c @ X3 @ ( inputs9095006808714423967tion_a @ M ) )
           => ~ ! [Y2: produc3509355604313844263tion_a] :
                  ~ ( member2632207693412262165tion_a @ ( append7143236819997180545tion_a @ Io @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y2 ) @ nil_Pr596483954593762796tion_a ) ) @ ( lS_a_P1924925719573064673tion_a @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_836_completely__specified__language__extension,axiom,
    ! [M: fsm_c_1147223751206369699tion_a,Q: c,Io: list_P7785822056432494700tion_a,X3: product_prod_b_c] :
      ( ( comple6246774061325544296tion_a @ M )
     => ( ( member_c @ Q @ ( states163441092882727240tion_a @ M ) )
       => ( ( member2632207693412262165tion_a @ Io @ ( lS_c_P1605286371396159715tion_a @ M @ Q ) )
         => ( ( member7862447941013992593od_b_c @ X3 @ ( inputs8775367460537519009tion_a @ M ) )
           => ~ ! [Y2: produc3509355604313844263tion_a] :
                  ~ ( member2632207693412262165tion_a @ ( append7143236819997180545tion_a @ Io @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y2 ) @ nil_Pr596483954593762796tion_a ) ) @ ( lS_c_P1605286371396159715tion_a @ M @ Q ) ) ) ) ) ) ).

% completely_specified_language_extension
thf(fact_837_hd__prefixes,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( hd_lis5991851625695082967tion_a @ ( prefix4527274647823915123tion_a @ Xs ) )
      = nil_Pr596483954593762796tion_a ) ).

% hd_prefixes
thf(fact_838_hd__prefixes,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( hd_lis2394141544741573465od_b_c @ ( prefix1131979855692807669od_b_c @ Xs ) )
      = nil_Product_prod_b_c ) ).

% hd_prefixes
thf(fact_839_hd__prefixes,axiom,
    ! [Xs: list_b] :
      ( ( hd_list_b @ ( prefixes_b @ Xs ) )
      = nil_b ) ).

% hd_prefixes
thf(fact_840_hd__prefixes,axiom,
    ! [Xs: list_c] :
      ( ( hd_list_c @ ( prefixes_c @ Xs ) )
      = nil_c ) ).

% hd_prefixes
thf(fact_841_hd__prefixes,axiom,
    ! [Xs: list_a] :
      ( ( hd_list_a @ ( prefixes_a @ Xs ) )
      = nil_a ) ).

% hd_prefixes
thf(fact_842_prefixes__set__Nil,axiom,
    ! [Xs: list_P7785822056432494700tion_a] : ( member2632207693412262165tion_a @ nil_Pr596483954593762796tion_a @ ( set_li2579453694760304001tion_a @ ( prefix4527274647823915123tion_a @ Xs ) ) ) ).

% prefixes_set_Nil
thf(fact_843_prefixes__set__Nil,axiom,
    ! [Xs: list_P903359562653991662od_b_c] : ( member6330420149250801815od_b_c @ nil_Product_prod_b_c @ ( set_li4480668622519654659od_b_c @ ( prefix1131979855692807669od_b_c @ Xs ) ) ) ).

% prefixes_set_Nil
thf(fact_844_prefixes__set__Nil,axiom,
    ! [Xs: list_b] : ( member_list_b @ nil_b @ ( set_list_b2 @ ( prefixes_b @ Xs ) ) ) ).

% prefixes_set_Nil
thf(fact_845_prefixes__set__Nil,axiom,
    ! [Xs: list_c] : ( member_list_c @ nil_c @ ( set_list_c2 @ ( prefixes_c @ Xs ) ) ) ).

% prefixes_set_Nil
thf(fact_846_prefixes__set__Nil,axiom,
    ! [Xs: list_a] : ( member_list_a @ nil_a @ ( set_list_a2 @ ( prefixes_a @ Xs ) ) ) ).

% prefixes_set_Nil
thf(fact_847_prefixes__prefix__suffix__ob,axiom,
    ! [A: list_P7785822056432494700tion_a,B: list_P7785822056432494700tion_a,C2: list_P7785822056432494700tion_a] :
      ( ( member2632207693412262165tion_a @ A @ ( set_li2579453694760304001tion_a @ ( prefix4527274647823915123tion_a @ ( append7143236819997180545tion_a @ B @ C2 ) ) ) )
     => ( ~ ( member2632207693412262165tion_a @ A @ ( set_li2579453694760304001tion_a @ ( prefix4527274647823915123tion_a @ B ) ) )
       => ~ ! [C3: list_P7785822056432494700tion_a] :
              ( ? [C4: list_P7785822056432494700tion_a] :
                  ( C2
                  = ( append7143236819997180545tion_a @ C3 @ C4 ) )
             => ( ( A
                  = ( append7143236819997180545tion_a @ B @ C3 ) )
               => ( C3 = nil_Pr596483954593762796tion_a ) ) ) ) ) ).

% prefixes_prefix_suffix_ob
thf(fact_848_prefixes__prefix__suffix__ob,axiom,
    ! [A: list_P903359562653991662od_b_c,B: list_P903359562653991662od_b_c,C2: list_P903359562653991662od_b_c] :
      ( ( member6330420149250801815od_b_c @ A @ ( set_li4480668622519654659od_b_c @ ( prefix1131979855692807669od_b_c @ ( append2547753245680614915od_b_c @ B @ C2 ) ) ) )
     => ( ~ ( member6330420149250801815od_b_c @ A @ ( set_li4480668622519654659od_b_c @ ( prefix1131979855692807669od_b_c @ B ) ) )
       => ~ ! [C3: list_P903359562653991662od_b_c] :
              ( ? [C4: list_P903359562653991662od_b_c] :
                  ( C2
                  = ( append2547753245680614915od_b_c @ C3 @ C4 ) )
             => ( ( A
                  = ( append2547753245680614915od_b_c @ B @ C3 ) )
               => ( C3 = nil_Product_prod_b_c ) ) ) ) ) ).

% prefixes_prefix_suffix_ob
thf(fact_849_prefixes__prefix__suffix__ob,axiom,
    ! [A: list_b,B: list_b,C2: list_b] :
      ( ( member_list_b @ A @ ( set_list_b2 @ ( prefixes_b @ ( append_b @ B @ C2 ) ) ) )
     => ( ~ ( member_list_b @ A @ ( set_list_b2 @ ( prefixes_b @ B ) ) )
       => ~ ! [C3: list_b] :
              ( ? [C4: list_b] :
                  ( C2
                  = ( append_b @ C3 @ C4 ) )
             => ( ( A
                  = ( append_b @ B @ C3 ) )
               => ( C3 = nil_b ) ) ) ) ) ).

% prefixes_prefix_suffix_ob
thf(fact_850_prefixes__prefix__suffix__ob,axiom,
    ! [A: list_c,B: list_c,C2: list_c] :
      ( ( member_list_c @ A @ ( set_list_c2 @ ( prefixes_c @ ( append_c @ B @ C2 ) ) ) )
     => ( ~ ( member_list_c @ A @ ( set_list_c2 @ ( prefixes_c @ B ) ) )
       => ~ ! [C3: list_c] :
              ( ? [C4: list_c] :
                  ( C2
                  = ( append_c @ C3 @ C4 ) )
             => ( ( A
                  = ( append_c @ B @ C3 ) )
               => ( C3 = nil_c ) ) ) ) ) ).

% prefixes_prefix_suffix_ob
thf(fact_851_prefixes__prefix__suffix__ob,axiom,
    ! [A: list_a,B: list_a,C2: list_a] :
      ( ( member_list_a @ A @ ( set_list_a2 @ ( prefixes_a @ ( append_a @ B @ C2 ) ) ) )
     => ( ~ ( member_list_a @ A @ ( set_list_a2 @ ( prefixes_a @ B ) ) )
       => ~ ! [C3: list_a] :
              ( ? [C4: list_a] :
                  ( C2
                  = ( append_a @ C3 @ C4 ) )
             => ( ( A
                  = ( append_a @ B @ C3 ) )
               => ( C3 = nil_a ) ) ) ) ) ).

% prefixes_prefix_suffix_ob
thf(fact_852_language__io_I1_J,axiom,
    ! [Io: list_P903359562653991662od_b_c,M: fsm_a_b_c,Q: a,X3: b,Y: c] :
      ( ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q ) )
     => ( ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ ( set_Product_prod_b_c2 @ Io ) )
       => ( member_b @ X3 @ ( inputs_a_b_c @ M ) ) ) ) ).

% language_io(1)
thf(fact_853_language__io_I2_J,axiom,
    ! [Io: list_P903359562653991662od_b_c,M: fsm_a_b_c,Q: a,X3: b,Y: c] :
      ( ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q ) )
     => ( ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ ( set_Product_prod_b_c2 @ Io ) )
       => ( member_c @ Y @ ( outputs_a_b_c @ M ) ) ) ) ).

% language_io(2)
thf(fact_854_prefixes__set__Cons__insert,axiom,
    ! [W: list_P7785822056432494700tion_a,Xy: produc1359548802814378470tion_a] :
      ( ( set_li2579453694760304001tion_a @ ( prefix4527274647823915123tion_a @ ( append7143236819997180545tion_a @ W @ ( cons_P7206946803070396828tion_a @ Xy @ nil_Pr596483954593762796tion_a ) ) ) )
      = ( insert2781922097456180796tion_a @ ( append7143236819997180545tion_a @ W @ ( cons_P7206946803070396828tion_a @ Xy @ nil_Pr596483954593762796tion_a ) ) @ ( set_li2579453694760304001tion_a @ ( prefix4527274647823915123tion_a @ W ) ) ) ) ).

% prefixes_set_Cons_insert
thf(fact_855_prefixes__set__Cons__insert,axiom,
    ! [W: list_P903359562653991662od_b_c,Xy: product_prod_b_c] :
      ( ( set_li4480668622519654659od_b_c @ ( prefix1131979855692807669od_b_c @ ( append2547753245680614915od_b_c @ W @ ( cons_P4529483553340347422od_b_c @ Xy @ nil_Product_prod_b_c ) ) ) )
      = ( insert6227932334100060350od_b_c @ ( append2547753245680614915od_b_c @ W @ ( cons_P4529483553340347422od_b_c @ Xy @ nil_Product_prod_b_c ) ) @ ( set_li4480668622519654659od_b_c @ ( prefix1131979855692807669od_b_c @ W ) ) ) ) ).

% prefixes_set_Cons_insert
thf(fact_856_prefixes__set__Cons__insert,axiom,
    ! [W: list_b,Xy: b] :
      ( ( set_list_b2 @ ( prefixes_b @ ( append_b @ W @ ( cons_b @ Xy @ nil_b ) ) ) )
      = ( insert_list_b @ ( append_b @ W @ ( cons_b @ Xy @ nil_b ) ) @ ( set_list_b2 @ ( prefixes_b @ W ) ) ) ) ).

% prefixes_set_Cons_insert
thf(fact_857_prefixes__set__Cons__insert,axiom,
    ! [W: list_c,Xy: c] :
      ( ( set_list_c2 @ ( prefixes_c @ ( append_c @ W @ ( cons_c @ Xy @ nil_c ) ) ) )
      = ( insert_list_c @ ( append_c @ W @ ( cons_c @ Xy @ nil_c ) ) @ ( set_list_c2 @ ( prefixes_c @ W ) ) ) ) ).

% prefixes_set_Cons_insert
thf(fact_858_prefixes__set__Cons__insert,axiom,
    ! [W: list_a,Xy: a] :
      ( ( set_list_a2 @ ( prefixes_a @ ( append_a @ W @ ( cons_a @ Xy @ nil_a ) ) ) )
      = ( insert_list_a @ ( append_a @ W @ ( cons_a @ Xy @ nil_a ) ) @ ( set_list_a2 @ ( prefixes_a @ W ) ) ) ) ).

% prefixes_set_Cons_insert
thf(fact_859_after__is__state,axiom,
    ! [M: fsm_a_b_c,Io: list_P903359562653991662od_b_c,Q: a] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q ) )
       => ( member_a @ ( after_a_b_c @ M @ Q @ Io ) @ ( states_a_b_c @ M ) ) ) ) ).

% after_is_state
thf(fact_860_observable__after__language__append,axiom,
    ! [M: fsm_a_b_c,Io1: list_P903359562653991662od_b_c,Q: a,Io22: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ Io1 @ ( lS_a_b_c @ M @ Q ) )
       => ( ( member6330420149250801815od_b_c @ Io22 @ ( lS_a_b_c @ M @ ( after_a_b_c @ M @ Q @ Io1 ) ) )
         => ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io1 @ Io22 ) @ ( lS_a_b_c @ M @ Q ) ) ) ) ) ).

% observable_after_language_append
thf(fact_861_observable__after__language__none,axiom,
    ! [M: fsm_a_b_c,Io1: list_P903359562653991662od_b_c,Q: a,Io22: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ Io1 @ ( lS_a_b_c @ M @ Q ) )
       => ( ~ ( member6330420149250801815od_b_c @ Io22 @ ( lS_a_b_c @ M @ ( after_a_b_c @ M @ Q @ Io1 ) ) )
         => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io1 @ Io22 ) @ ( lS_a_b_c @ M @ Q ) ) ) ) ) ).

% observable_after_language_none
thf(fact_862_observable__after__eq,axiom,
    ! [M: fsm_a_b_c,Q: a,Io1: list_P903359562653991662od_b_c,Io22: list_P903359562653991662od_b_c,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( ( after_a_b_c @ M @ Q @ Io1 )
          = ( after_a_b_c @ M @ Q @ Io22 ) )
       => ( ( member6330420149250801815od_b_c @ Io1 @ ( lS_a_b_c @ M @ Q ) )
         => ( ( member6330420149250801815od_b_c @ Io22 @ ( lS_a_b_c @ M @ Q ) )
           => ( ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io1 @ Io ) @ ( lS_a_b_c @ M @ Q ) )
              = ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io22 @ Io ) @ ( lS_a_b_c @ M @ Q ) ) ) ) ) ) ) ).

% observable_after_eq
thf(fact_863_after__language__iff,axiom,
    ! [M: fsm_a_b_c,Alpha: list_P903359562653991662od_b_c,Q: a,Gamma: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ Alpha @ ( lS_a_b_c @ M @ Q ) )
       => ( ( member6330420149250801815od_b_c @ Gamma @ ( lS_a_b_c @ M @ ( after_a_b_c @ M @ Q @ Alpha ) ) )
          = ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Alpha @ Gamma ) @ ( lS_a_b_c @ M @ Q ) ) ) ) ) ).

% after_language_iff
thf(fact_864_after__split,axiom,
    ! [M: fsm_a_b_c,Alpha: list_P903359562653991662od_b_c,Gamma: list_P903359562653991662od_b_c,Q: a] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Alpha @ Gamma ) @ ( lS_a_b_c @ M @ Q ) )
       => ( ( after_a_b_c @ M @ ( after_a_b_c @ M @ Q @ Alpha ) @ Gamma )
          = ( after_a_b_c @ M @ Q @ ( append2547753245680614915od_b_c @ Alpha @ Gamma ) ) ) ) ) ).

% after_split
thf(fact_865_is__in__language__iff,axiom,
    ! [M: fsm_a_b_c,Q: a,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member_a @ Q @ ( states_a_b_c @ M ) )
       => ( ( is_in_language_a_b_c @ M @ Q @ Io )
          = ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q ) ) ) ) ) ).

% is_in_language_iff
thf(fact_866_prefixes_Osimps_I1_J,axiom,
    ( ( prefix4527274647823915123tion_a @ nil_Pr596483954593762796tion_a )
    = ( cons_l4387309880990760226tion_a @ nil_Pr596483954593762796tion_a @ nil_li683225626544421234tion_a ) ) ).

% prefixes.simps(1)
thf(fact_867_prefixes_Osimps_I1_J,axiom,
    ( ( prefix1131979855692807669od_b_c @ nil_Product_prod_b_c )
    = ( cons_l342771267123639716od_b_c @ nil_Product_prod_b_c @ nil_li8071162985807626740od_b_c ) ) ).

% prefixes.simps(1)
thf(fact_868_prefixes_Osimps_I1_J,axiom,
    ( ( prefixes_b @ nil_b )
    = ( cons_list_b @ nil_b @ nil_list_b ) ) ).

% prefixes.simps(1)
thf(fact_869_prefixes_Osimps_I1_J,axiom,
    ( ( prefixes_c @ nil_c )
    = ( cons_list_c @ nil_c @ nil_list_c ) ) ).

% prefixes.simps(1)
thf(fact_870_prefixes_Osimps_I1_J,axiom,
    ( ( prefixes_a @ nil_a )
    = ( cons_list_a @ nil_a @ nil_list_a ) ) ).

% prefixes.simps(1)
thf(fact_871_maximal__prefix__in__language__properties_I1_J,axiom,
    ! [M: fsm_a_b_c,Q: a,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member_a @ Q @ ( states_a_b_c @ M ) )
       => ( member6330420149250801815od_b_c @ ( maxima1559550560783484624_a_b_c @ M @ Q @ Io ) @ ( lS_a_b_c @ M @ Q ) ) ) ) ).

% maximal_prefix_in_language_properties(1)
thf(fact_872_maximal__prefix__in__language__properties_I2_J,axiom,
    ! [M: fsm_a_b_c,Q: a,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member_a @ Q @ ( states_a_b_c @ M ) )
       => ( member6330420149250801815od_b_c @ ( maxima1559550560783484624_a_b_c @ M @ Q @ Io ) @ ( set_li4480668622519654659od_b_c @ ( prefix1131979855692807669od_b_c @ Io ) ) ) ) ) ).

% maximal_prefix_in_language_properties(2)
thf(fact_873_h__obs__language__iff,axiom,
    ! [M: fsm_a_b_c,X3: b,Y: c,Io: list_P903359562653991662od_b_c,Q: a] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Io ) @ ( lS_a_b_c @ M @ Q ) )
        = ( ? [Q6: a] :
              ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
                = ( some_a @ Q6 ) )
              & ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q6 ) ) ) ) ) ) ).

% h_obs_language_iff
thf(fact_874_h__obs__language__iff,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Io: list_P7785822056432494700tion_a,Q: a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( member2632207693412262165tion_a @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Io ) @ ( lS_a_P1924925719573064673tion_a @ M @ Q ) )
        = ( ? [Q6: a] :
              ( ( ( h_obs_502279454451148624tion_a @ M @ Q @ X3 @ Y )
                = ( some_a @ Q6 ) )
              & ( member2632207693412262165tion_a @ Io @ ( lS_a_P1924925719573064673tion_a @ M @ Q6 ) ) ) ) ) ) ).

% h_obs_language_iff
thf(fact_875_h__obs__language__iff,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,X3: option_a,Y: option_a,Io: list_P2261792721279755821tion_a,Q: a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( member3771681913024528598tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Io ) @ ( lS_a_o2632099069520436386tion_a @ M @ Q ) )
        = ( ? [Q6: a] :
              ( ( ( h_obs_2762009199847384593tion_a @ M @ Q @ X3 @ Y )
                = ( some_a @ Q6 ) )
              & ( member3771681913024528598tion_a @ Io @ ( lS_a_o2632099069520436386tion_a @ M @ Q6 ) ) ) ) ) ) ).

% h_obs_language_iff
thf(fact_876_h__obs__language__iff,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,X3: b,Y: c,Io: list_P903359562653991662od_b_c,Q: produc1359548802814378470tion_a] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Io ) @ ( lS_Pro5608194163545659851_a_b_c @ M @ Q ) )
        = ( ? [Q6: produc1359548802814378470tion_a] :
              ( ( ( h_obs_7784731882632891962_a_b_c @ M @ Q @ X3 @ Y )
                = ( some_P2468934990214623435tion_a @ Q6 ) )
              & ( member6330420149250801815od_b_c @ Io @ ( lS_Pro5608194163545659851_a_b_c @ M @ Q6 ) ) ) ) ) ) ).

% h_obs_language_iff
thf(fact_877_h__obs__language__iff,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Io: list_P7785822056432494700tion_a,Q: produc1359548802814378470tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( member2632207693412262165tion_a @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Io ) @ ( lS_Pro735550389098649289tion_a @ M @ Q ) )
        = ( ? [Q6: produc1359548802814378470tion_a] :
              ( ( ( h_obs_2034362272866080824tion_a @ M @ Q @ X3 @ Y )
                = ( some_P2468934990214623435tion_a @ Q6 ) )
              & ( member2632207693412262165tion_a @ Io @ ( lS_Pro735550389098649289tion_a @ M @ Q6 ) ) ) ) ) ) ).

% h_obs_language_iff
thf(fact_878_h__obs__language__iff,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,X3: option_a,Y: option_a,Io: list_P2261792721279755821tion_a,Q: produc1359548802814378470tion_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( member3771681913024528598tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Io ) @ ( lS_Pro9208888441041508234tion_a @ M @ Q ) )
        = ( ? [Q6: produc1359548802814378470tion_a] :
              ( ( ( h_obs_5157205410614601465tion_a @ M @ Q @ X3 @ Y )
                = ( some_P2468934990214623435tion_a @ Q6 ) )
              & ( member3771681913024528598tion_a @ Io @ ( lS_Pro9208888441041508234tion_a @ M @ Q6 ) ) ) ) ) ) ).

% h_obs_language_iff
thf(fact_879_distinguish__prepend,axiom,
    ! [M: fsm_a_b_c,Q16: a,Io: list_P903359562653991662od_b_c,Q24: a,W2: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( distinguishes_a_b_c @ M @ ( after_a_b_c @ M @ Q16 @ Io ) @ ( after_a_b_c @ M @ Q24 @ Io ) @ W2 )
       => ( ( member_a @ Q16 @ ( states_a_b_c @ M ) )
         => ( ( member_a @ Q24 @ ( states_a_b_c @ M ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q16 ) )
             => ( ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q24 ) )
               => ( distinguishes_a_b_c @ M @ Q16 @ Q24 @ ( append2547753245680614915od_b_c @ Io @ W2 ) ) ) ) ) ) ) ) ).

% distinguish_prepend
thf(fact_880_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P903359562653991662od_b_c,M: fsm_c_b_c,Q: c] :
      ( ~ ( member6330420149250801815od_b_c @ Io @ ( lS_c_b_c @ M @ Q ) )
     => ( ( member_c @ Q @ ( states_c_b_c @ M ) )
       => ( ( observable_c_b_c @ M )
         => ~ ! [Io3: list_P903359562653991662od_b_c,X: b,Y2: c] :
                ( ? [Io4: list_P903359562653991662od_b_c] :
                    ( Io
                    = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ nil_Product_prod_b_c ) @ Io4 ) ) )
               => ( ( member6330420149250801815od_b_c @ Io3 @ ( lS_c_b_c @ M @ Q ) )
                 => ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ nil_Product_prod_b_c ) ) @ ( lS_c_b_c @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_881_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P903359562653991662od_b_c,M: fsm_b_b_c,Q: b] :
      ( ~ ( member6330420149250801815od_b_c @ Io @ ( lS_b_b_c @ M @ Q ) )
     => ( ( member_b @ Q @ ( states_b_b_c @ M ) )
       => ( ( observable_b_b_c @ M )
         => ~ ! [Io3: list_P903359562653991662od_b_c,X: b,Y2: c] :
                ( ? [Io4: list_P903359562653991662od_b_c] :
                    ( Io
                    = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ nil_Product_prod_b_c ) @ Io4 ) ) )
               => ( ( member6330420149250801815od_b_c @ Io3 @ ( lS_b_b_c @ M @ Q ) )
                 => ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ nil_Product_prod_b_c ) ) @ ( lS_b_b_c @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_882_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P903359562653991662od_b_c,M: fsm_a_b_c,Q: a] :
      ( ~ ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q ) )
     => ( ( member_a @ Q @ ( states_a_b_c @ M ) )
       => ( ( observable_a_b_c @ M )
         => ~ ! [Io3: list_P903359562653991662od_b_c,X: b,Y2: c] :
                ( ? [Io4: list_P903359562653991662od_b_c] :
                    ( Io
                    = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ nil_Product_prod_b_c ) @ Io4 ) ) )
               => ( ( member6330420149250801815od_b_c @ Io3 @ ( lS_a_b_c @ M @ Q ) )
                 => ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ nil_Product_prod_b_c ) ) @ ( lS_a_b_c @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_883_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P903359562653991662od_b_c,M: fsm_Pr8946560376811747725_c_b_c,Q: product_prod_b_c] :
      ( ~ ( member6330420149250801815od_b_c @ Io @ ( lS_Pro4505222411400483149_c_b_c @ M @ Q ) )
     => ( ( member7862447941013992593od_b_c @ Q @ ( states8981316748681014706_c_b_c @ M ) )
       => ( ( observ2355048066641855153_c_b_c @ M )
         => ~ ! [Io3: list_P903359562653991662od_b_c,X: b,Y2: c] :
                ( ? [Io4: list_P903359562653991662od_b_c] :
                    ( Io
                    = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ nil_Product_prod_b_c ) @ Io4 ) ) )
               => ( ( member6330420149250801815od_b_c @ Io3 @ ( lS_Pro4505222411400483149_c_b_c @ M @ Q ) )
                 => ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X @ Y2 ) @ nil_Product_prod_b_c ) ) @ ( lS_Pro4505222411400483149_c_b_c @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_884_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P2261792721279755821tion_a,M: fsm_a_6349391259317406178tion_a,Q: a] :
      ( ~ ( member3771681913024528598tion_a @ Io @ ( lS_a_o2632099069520436386tion_a @ M @ Q ) )
     => ( ( member_a @ Q @ ( states8949780166273740551tion_a @ M ) )
       => ( ( observ7071744495117927942tion_a @ M )
         => ~ ! [Io3: list_P2261792721279755821tion_a,X: option_a,Y2: option_a] :
                ( ? [Io4: list_P2261792721279755821tion_a] :
                    ( Io
                    = ( append7980291006836379842tion_a @ Io3 @ ( append7980291006836379842tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X @ Y2 ) @ nil_Pr2074429324785754669tion_a ) @ Io4 ) ) )
               => ( ( member3771681913024528598tion_a @ Io3 @ ( lS_a_o2632099069520436386tion_a @ M @ Q ) )
                 => ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ Io3 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X @ Y2 ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_a_o2632099069520436386tion_a @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_885_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P2261792721279755821tion_a,M: fsm_c_2940947492383665124tion_a,Q: c] :
      ( ~ ( member3771681913024528598tion_a @ Io @ ( lS_c_o6362673008606649764tion_a @ M @ Q ) )
     => ( ( member_c @ Q @ ( states3456982068505178121tion_a @ M ) )
       => ( ( observ1578946397349365512tion_a @ M )
         => ~ ! [Io3: list_P2261792721279755821tion_a,X: option_a,Y2: option_a] :
                ( ? [Io4: list_P2261792721279755821tion_a] :
                    ( Io
                    = ( append7980291006836379842tion_a @ Io3 @ ( append7980291006836379842tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X @ Y2 ) @ nil_Pr2074429324785754669tion_a ) @ Io4 ) ) )
               => ( ( member3771681913024528598tion_a @ Io3 @ ( lS_c_o6362673008606649764tion_a @ M @ Q ) )
                 => ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ Io3 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X @ Y2 ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_c_o6362673008606649764tion_a @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_886_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P2261792721279755821tion_a,M: fsm_b_4645169375850535651tion_a,Q: b] :
      ( ~ ( member3771681913024528598tion_a @ Io @ ( lS_b_o4497386039063543075tion_a @ M @ Q ) )
     => ( ( member_b @ Q @ ( states1591695098962071432tion_a @ M ) )
       => ( ( observ8937031464661034631tion_a @ M )
         => ~ ! [Io3: list_P2261792721279755821tion_a,X: option_a,Y2: option_a] :
                ( ? [Io4: list_P2261792721279755821tion_a] :
                    ( Io
                    = ( append7980291006836379842tion_a @ Io3 @ ( append7980291006836379842tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X @ Y2 ) @ nil_Pr2074429324785754669tion_a ) @ Io4 ) ) )
               => ( ( member3771681913024528598tion_a @ Io3 @ ( lS_b_o4497386039063543075tion_a @ M @ Q ) )
                 => ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ Io3 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X @ Y2 ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_b_o4497386039063543075tion_a @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_887_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P2261792721279755821tion_a,M: fsm_Pr4082893179519573580tion_a,Q: product_prod_b_c] :
      ( ~ ( member3771681913024528598tion_a @ Io @ ( lS_Pro4527773713195546892tion_a @ M @ Q ) )
     => ( ( member7862447941013992593od_b_c @ Q @ ( states4804875911183523441tion_a @ M ) )
       => ( ( observ3186572893111279216tion_a @ M )
         => ~ ! [Io3: list_P2261792721279755821tion_a,X: option_a,Y2: option_a] :
                ( ? [Io4: list_P2261792721279755821tion_a] :
                    ( Io
                    = ( append7980291006836379842tion_a @ Io3 @ ( append7980291006836379842tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X @ Y2 ) @ nil_Pr2074429324785754669tion_a ) @ Io4 ) ) )
               => ( ( member3771681913024528598tion_a @ Io3 @ ( lS_Pro4527773713195546892tion_a @ M @ Q ) )
                 => ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ Io3 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X @ Y2 ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_Pro4527773713195546892tion_a @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_888_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P7785822056432494700tion_a,M: fsm_a_6478515617308310433tion_a,Q: a] :
      ( ~ ( member2632207693412262165tion_a @ Io @ ( lS_a_P1924925719573064673tion_a @ M @ Q ) )
     => ( ( member_a @ Q @ ( states483080441059632198tion_a @ M ) )
       => ( ( observ671438039871229253tion_a @ M )
         => ~ ! [Io3: list_P7785822056432494700tion_a,X: product_prod_b_c,Y2: produc3509355604313844263tion_a] :
                ( ? [Io4: list_P7785822056432494700tion_a] :
                    ( Io
                    = ( append7143236819997180545tion_a @ Io3 @ ( append7143236819997180545tion_a @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X @ Y2 ) @ nil_Pr596483954593762796tion_a ) @ Io4 ) ) )
               => ( ( member2632207693412262165tion_a @ Io3 @ ( lS_a_P1924925719573064673tion_a @ M @ Q ) )
                 => ( member2632207693412262165tion_a @ ( append7143236819997180545tion_a @ Io3 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X @ Y2 ) @ nil_Pr596483954593762796tion_a ) ) @ ( lS_a_P1924925719573064673tion_a @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_889_language__maximal__contained__prefix__ob,axiom,
    ! [Io: list_P7785822056432494700tion_a,M: fsm_c_1147223751206369699tion_a,Q: c] :
      ( ~ ( member2632207693412262165tion_a @ Io @ ( lS_c_P1605286371396159715tion_a @ M @ Q ) )
     => ( ( member_c @ Q @ ( states163441092882727240tion_a @ M ) )
       => ( ( observ351798691694324295tion_a @ M )
         => ~ ! [Io3: list_P7785822056432494700tion_a,X: product_prod_b_c,Y2: produc3509355604313844263tion_a] :
                ( ? [Io4: list_P7785822056432494700tion_a] :
                    ( Io
                    = ( append7143236819997180545tion_a @ Io3 @ ( append7143236819997180545tion_a @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X @ Y2 ) @ nil_Pr596483954593762796tion_a ) @ Io4 ) ) )
               => ( ( member2632207693412262165tion_a @ Io3 @ ( lS_c_P1605286371396159715tion_a @ M @ Q ) )
                 => ( member2632207693412262165tion_a @ ( append7143236819997180545tion_a @ Io3 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X @ Y2 ) @ nil_Pr596483954593762796tion_a ) ) @ ( lS_c_P1605286371396159715tion_a @ M @ Q ) ) ) ) ) ) ) ).

% language_maximal_contained_prefix_ob
thf(fact_890_h__obs__from__LS,axiom,
    ! [M: fsm_a_b_c,X3: b,Y: c,Q: a] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) @ ( lS_a_b_c @ M @ Q ) )
       => ~ ! [Q8: a] :
              ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
             != ( some_a @ Q8 ) ) ) ) ).

% h_obs_from_LS
thf(fact_891_h__obs__from__LS,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q: a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( member2632207693412262165tion_a @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) @ ( lS_a_P1924925719573064673tion_a @ M @ Q ) )
       => ~ ! [Q8: a] :
              ( ( h_obs_502279454451148624tion_a @ M @ Q @ X3 @ Y )
             != ( some_a @ Q8 ) ) ) ) ).

% h_obs_from_LS
thf(fact_892_h__obs__from__LS,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,X3: option_a,Y: option_a,Q: a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( member3771681913024528598tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) @ ( lS_a_o2632099069520436386tion_a @ M @ Q ) )
       => ~ ! [Q8: a] :
              ( ( h_obs_2762009199847384593tion_a @ M @ Q @ X3 @ Y )
             != ( some_a @ Q8 ) ) ) ) ).

% h_obs_from_LS
thf(fact_893_h__obs__from__LS,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,X3: b,Y: c,Q: produc1359548802814378470tion_a] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) @ ( lS_Pro5608194163545659851_a_b_c @ M @ Q ) )
       => ~ ! [Q8: produc1359548802814378470tion_a] :
              ( ( h_obs_7784731882632891962_a_b_c @ M @ Q @ X3 @ Y )
             != ( some_P2468934990214623435tion_a @ Q8 ) ) ) ) ).

% h_obs_from_LS
thf(fact_894_h__obs__from__LS,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q: produc1359548802814378470tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( member2632207693412262165tion_a @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) @ ( lS_Pro735550389098649289tion_a @ M @ Q ) )
       => ~ ! [Q8: produc1359548802814378470tion_a] :
              ( ( h_obs_2034362272866080824tion_a @ M @ Q @ X3 @ Y )
             != ( some_P2468934990214623435tion_a @ Q8 ) ) ) ) ).

% h_obs_from_LS
thf(fact_895_h__obs__from__LS,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,X3: option_a,Y: option_a,Q: produc1359548802814378470tion_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( member3771681913024528598tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) @ ( lS_Pro9208888441041508234tion_a @ M @ Q ) )
       => ~ ! [Q8: produc1359548802814378470tion_a] :
              ( ( h_obs_5157205410614601465tion_a @ M @ Q @ X3 @ Y )
             != ( some_P2468934990214623435tion_a @ Q8 ) ) ) ) ).

% h_obs_from_LS
thf(fact_896_h__obs__language__single__transition__iff,axiom,
    ! [M: fsm_a_b_c,X3: b,Y: c,Q: a] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) @ ( lS_a_b_c @ M @ Q ) )
        = ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
         != none_a ) ) ) ).

% h_obs_language_single_transition_iff
thf(fact_897_h__obs__language__single__transition__iff,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q: a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( member2632207693412262165tion_a @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) @ ( lS_a_P1924925719573064673tion_a @ M @ Q ) )
        = ( ( h_obs_502279454451148624tion_a @ M @ Q @ X3 @ Y )
         != none_a ) ) ) ).

% h_obs_language_single_transition_iff
thf(fact_898_h__obs__language__single__transition__iff,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,X3: option_a,Y: option_a,Q: a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( member3771681913024528598tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) @ ( lS_a_o2632099069520436386tion_a @ M @ Q ) )
        = ( ( h_obs_2762009199847384593tion_a @ M @ Q @ X3 @ Y )
         != none_a ) ) ) ).

% h_obs_language_single_transition_iff
thf(fact_899_h__obs__language__single__transition__iff,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,X3: b,Y: c,Q: produc1359548802814378470tion_a] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) @ ( lS_Pro5608194163545659851_a_b_c @ M @ Q ) )
        = ( ( h_obs_7784731882632891962_a_b_c @ M @ Q @ X3 @ Y )
         != none_P2271573532998059335tion_a ) ) ) ).

% h_obs_language_single_transition_iff
thf(fact_900_h__obs__language__single__transition__iff,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q: produc1359548802814378470tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( member2632207693412262165tion_a @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) @ ( lS_Pro735550389098649289tion_a @ M @ Q ) )
        = ( ( h_obs_2034362272866080824tion_a @ M @ Q @ X3 @ Y )
         != none_P2271573532998059335tion_a ) ) ) ).

% h_obs_language_single_transition_iff
thf(fact_901_h__obs__language__single__transition__iff,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,X3: option_a,Y: option_a,Q: produc1359548802814378470tion_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( member3771681913024528598tion_a @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) @ ( lS_Pro9208888441041508234tion_a @ M @ Q ) )
        = ( ( h_obs_5157205410614601465tion_a @ M @ Q @ X3 @ Y )
         != none_P2271573532998059335tion_a ) ) ) ).

% h_obs_language_single_transition_iff
thf(fact_902_after__h__obs__prepend,axiom,
    ! [M: fsm_a_b_c,Q: a,X3: b,Y: c,Q3: a,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( ( h_obs_a_b_c @ M @ Q @ X3 @ Y )
          = ( some_a @ Q3 ) )
       => ( ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q3 ) )
         => ( ( after_a_b_c @ M @ Q @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Io ) )
            = ( after_a_b_c @ M @ Q3 @ Io ) ) ) ) ) ).

% after_h_obs_prepend
thf(fact_903_after__h__obs__prepend,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,Q: a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q3: a,Io: list_P7785822056432494700tion_a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( ( h_obs_502279454451148624tion_a @ M @ Q @ X3 @ Y )
          = ( some_a @ Q3 ) )
       => ( ( member2632207693412262165tion_a @ Io @ ( lS_a_P1924925719573064673tion_a @ M @ Q3 ) )
         => ( ( after_6104971424356839764tion_a @ M @ Q @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Io ) )
            = ( after_6104971424356839764tion_a @ M @ Q3 @ Io ) ) ) ) ) ).

% after_h_obs_prepend
thf(fact_904_after__h__obs__prepend,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,Q: a,X3: option_a,Y: option_a,Q3: a,Io: list_P2261792721279755821tion_a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( ( h_obs_2762009199847384593tion_a @ M @ Q @ X3 @ Y )
          = ( some_a @ Q3 ) )
       => ( ( member3771681913024528598tion_a @ Io @ ( lS_a_o2632099069520436386tion_a @ M @ Q3 ) )
         => ( ( after_4826890630637713429tion_a @ M @ Q @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Io ) )
            = ( after_4826890630637713429tion_a @ M @ Q3 @ Io ) ) ) ) ) ).

% after_h_obs_prepend
thf(fact_905_after__h__obs__prepend,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,Q: produc1359548802814378470tion_a,X3: b,Y: c,Q3: produc1359548802814378470tion_a,Io: list_P903359562653991662od_b_c] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ Q @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q3 ) )
       => ( ( member6330420149250801815od_b_c @ Io @ ( lS_Pro5608194163545659851_a_b_c @ M @ Q3 ) )
         => ( ( after_4736860933871809598_a_b_c @ M @ Q @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Io ) )
            = ( after_4736860933871809598_a_b_c @ M @ Q3 @ Io ) ) ) ) ) ).

% after_h_obs_prepend
thf(fact_906_after__h__obs__prepend,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,Q: produc1359548802814378470tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Q3: produc1359548802814378470tion_a,Io: list_P7785822056432494700tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( ( h_obs_2034362272866080824tion_a @ M @ Q @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q3 ) )
       => ( ( member2632207693412262165tion_a @ Io @ ( lS_Pro735550389098649289tion_a @ M @ Q3 ) )
         => ( ( after_4666548563309070908tion_a @ M @ Q @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Io ) )
            = ( after_4666548563309070908tion_a @ M @ Q3 @ Io ) ) ) ) ) ).

% after_h_obs_prepend
thf(fact_907_after__h__obs__prepend,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,Q: produc1359548802814378470tion_a,X3: option_a,Y: option_a,Q3: produc1359548802814378470tion_a,Io: list_P2261792721279755821tion_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( ( h_obs_5157205410614601465tion_a @ M @ Q @ X3 @ Y )
          = ( some_P2468934990214623435tion_a @ Q3 ) )
       => ( ( member3771681913024528598tion_a @ Io @ ( lS_Pro9208888441041508234tion_a @ M @ Q3 ) )
         => ( ( after_6806106828575809789tion_a @ M @ Q @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Io ) )
            = ( after_6806106828575809789tion_a @ M @ Q3 @ Io ) ) ) ) ) ).

% after_h_obs_prepend
thf(fact_908_prefixes__eq__snoc,axiom,
    ! [Ys2: list_P7785822056432494700tion_a,Xs: list_l7195309243935277682tion_a,X3: list_P7785822056432494700tion_a] :
      ( ( ( prefix4527274647823915123tion_a @ Ys2 )
        = ( append6969318523410456455tion_a @ Xs @ ( cons_l4387309880990760226tion_a @ X3 @ nil_li683225626544421234tion_a ) ) )
      = ( ( ( ( Ys2 = nil_Pr596483954593762796tion_a )
            & ( Xs = nil_li683225626544421234tion_a ) )
          | ? [Z: produc1359548802814378470tion_a,Zs: list_P7785822056432494700tion_a] :
              ( ( Ys2
                = ( append7143236819997180545tion_a @ Zs @ ( cons_P7206946803070396828tion_a @ Z @ nil_Pr596483954593762796tion_a ) ) )
              & ( Xs
                = ( prefix4527274647823915123tion_a @ Zs ) ) ) )
        & ( X3 = Ys2 ) ) ) ).

% prefixes_eq_snoc
thf(fact_909_prefixes__eq__snoc,axiom,
    ! [Ys2: list_P903359562653991662od_b_c,Xs: list_l8907847357763382004od_b_c,X3: list_P903359562653991662od_b_c] :
      ( ( ( prefix1131979855692807669od_b_c @ Ys2 )
        = ( append6992831555715836169od_b_c @ Xs @ ( cons_l342771267123639716od_b_c @ X3 @ nil_li8071162985807626740od_b_c ) ) )
      = ( ( ( ( Ys2 = nil_Product_prod_b_c )
            & ( Xs = nil_li8071162985807626740od_b_c ) )
          | ? [Z: product_prod_b_c,Zs: list_P903359562653991662od_b_c] :
              ( ( Ys2
                = ( append2547753245680614915od_b_c @ Zs @ ( cons_P4529483553340347422od_b_c @ Z @ nil_Product_prod_b_c ) ) )
              & ( Xs
                = ( prefix1131979855692807669od_b_c @ Zs ) ) ) )
        & ( X3 = Ys2 ) ) ) ).

% prefixes_eq_snoc
thf(fact_910_prefixes__eq__snoc,axiom,
    ! [Ys2: list_b,Xs: list_list_b,X3: list_b] :
      ( ( ( prefixes_b @ Ys2 )
        = ( append_list_b @ Xs @ ( cons_list_b @ X3 @ nil_list_b ) ) )
      = ( ( ( ( Ys2 = nil_b )
            & ( Xs = nil_list_b ) )
          | ? [Z: b,Zs: list_b] :
              ( ( Ys2
                = ( append_b @ Zs @ ( cons_b @ Z @ nil_b ) ) )
              & ( Xs
                = ( prefixes_b @ Zs ) ) ) )
        & ( X3 = Ys2 ) ) ) ).

% prefixes_eq_snoc
thf(fact_911_prefixes__eq__snoc,axiom,
    ! [Ys2: list_c,Xs: list_list_c,X3: list_c] :
      ( ( ( prefixes_c @ Ys2 )
        = ( append_list_c @ Xs @ ( cons_list_c @ X3 @ nil_list_c ) ) )
      = ( ( ( ( Ys2 = nil_c )
            & ( Xs = nil_list_c ) )
          | ? [Z: c,Zs: list_c] :
              ( ( Ys2
                = ( append_c @ Zs @ ( cons_c @ Z @ nil_c ) ) )
              & ( Xs
                = ( prefixes_c @ Zs ) ) ) )
        & ( X3 = Ys2 ) ) ) ).

% prefixes_eq_snoc
thf(fact_912_prefixes__eq__snoc,axiom,
    ! [Ys2: list_a,Xs: list_list_a,X3: list_a] :
      ( ( ( prefixes_a @ Ys2 )
        = ( append_list_a @ Xs @ ( cons_list_a @ X3 @ nil_list_a ) ) )
      = ( ( ( ( Ys2 = nil_a )
            & ( Xs = nil_list_a ) )
          | ? [Z: a,Zs: list_a] :
              ( ( Ys2
                = ( append_a @ Zs @ ( cons_a @ Z @ nil_a ) ) )
              & ( Xs
                = ( prefixes_a @ Zs ) ) ) )
        & ( X3 = Ys2 ) ) ) ).

% prefixes_eq_snoc
thf(fact_913_distinguishes__after__initial__prepend,axiom,
    ! [M: fsm_a_b_c,Io1: list_P903359562653991662od_b_c,Io22: list_P903359562653991662od_b_c,X3: b,Y: c,Gamma: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ Io1 @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
       => ( ( member6330420149250801815od_b_c @ Io22 @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
         => ( ( ( h_obs_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ Io1 ) @ X3 @ Y )
             != none_a )
           => ( ( ( h_obs_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ Io22 ) @ X3 @ Y )
               != none_a )
             => ( ( distinguishes_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ Io1 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) ) @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ Io22 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) ) @ Gamma )
               => ( distinguishes_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ Io1 ) @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ Io22 ) @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ) ) ).

% distinguishes_after_initial_prepend
thf(fact_914_distinguishes__after__initial__prepend,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,Io1: list_P7785822056432494700tion_a,Io22: list_P7785822056432494700tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Gamma: list_P7785822056432494700tion_a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( member2632207693412262165tion_a @ Io1 @ ( lS_a_P1924925719573064673tion_a @ M @ ( initia4477412644359670380tion_a @ M ) ) )
       => ( ( member2632207693412262165tion_a @ Io22 @ ( lS_a_P1924925719573064673tion_a @ M @ ( initia4477412644359670380tion_a @ M ) ) )
         => ( ( ( h_obs_502279454451148624tion_a @ M @ ( after_6104971424356839764tion_a @ M @ ( initia4477412644359670380tion_a @ M ) @ Io1 ) @ X3 @ Y )
             != none_a )
           => ( ( ( h_obs_502279454451148624tion_a @ M @ ( after_6104971424356839764tion_a @ M @ ( initia4477412644359670380tion_a @ M ) @ Io22 ) @ X3 @ Y )
               != none_a )
             => ( ( distin2101305680231671677tion_a @ M @ ( after_6104971424356839764tion_a @ M @ ( initia4477412644359670380tion_a @ M ) @ ( append7143236819997180545tion_a @ Io1 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) ) @ ( after_6104971424356839764tion_a @ M @ ( initia4477412644359670380tion_a @ M ) @ ( append7143236819997180545tion_a @ Io22 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) ) @ Gamma )
               => ( distin2101305680231671677tion_a @ M @ ( after_6104971424356839764tion_a @ M @ ( initia4477412644359670380tion_a @ M ) @ Io1 ) @ ( after_6104971424356839764tion_a @ M @ ( initia4477412644359670380tion_a @ M ) @ Io22 ) @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ) ) ).

% distinguishes_after_initial_prepend
thf(fact_915_distinguishes__after__initial__prepend,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,Io1: list_P2261792721279755821tion_a,Io22: list_P2261792721279755821tion_a,X3: option_a,Y: option_a,Gamma: list_P2261792721279755821tion_a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( member3771681913024528598tion_a @ Io1 @ ( lS_a_o2632099069520436386tion_a @ M @ ( initia5963972393380577581tion_a @ M ) ) )
       => ( ( member3771681913024528598tion_a @ Io22 @ ( lS_a_o2632099069520436386tion_a @ M @ ( initia5963972393380577581tion_a @ M ) ) )
         => ( ( ( h_obs_2762009199847384593tion_a @ M @ ( after_4826890630637713429tion_a @ M @ ( initia5963972393380577581tion_a @ M ) @ Io1 ) @ X3 @ Y )
             != none_a )
           => ( ( ( h_obs_2762009199847384593tion_a @ M @ ( after_4826890630637713429tion_a @ M @ ( initia5963972393380577581tion_a @ M ) @ Io22 ) @ X3 @ Y )
               != none_a )
             => ( ( distin2171398021799776318tion_a @ M @ ( after_4826890630637713429tion_a @ M @ ( initia5963972393380577581tion_a @ M ) @ ( append7980291006836379842tion_a @ Io1 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) ) @ ( after_4826890630637713429tion_a @ M @ ( initia5963972393380577581tion_a @ M ) @ ( append7980291006836379842tion_a @ Io22 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) ) @ Gamma )
               => ( distin2171398021799776318tion_a @ M @ ( after_4826890630637713429tion_a @ M @ ( initia5963972393380577581tion_a @ M ) @ Io1 ) @ ( after_4826890630637713429tion_a @ M @ ( initia5963972393380577581tion_a @ M ) @ Io22 ) @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ) ) ).

% distinguishes_after_initial_prepend
thf(fact_916_distinguishes__after__initial__prepend,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,Io1: list_P903359562653991662od_b_c,Io22: list_P903359562653991662od_b_c,X3: b,Y: c,Gamma: list_P903359562653991662od_b_c] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ Io1 @ ( lS_Pro5608194163545659851_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) ) )
       => ( ( member6330420149250801815od_b_c @ Io22 @ ( lS_Pro5608194163545659851_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) ) )
         => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ ( after_4736860933871809598_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) @ Io1 ) @ X3 @ Y )
             != none_P2271573532998059335tion_a )
           => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ ( after_4736860933871809598_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) @ Io22 ) @ X3 @ Y )
               != none_P2271573532998059335tion_a )
             => ( ( distin3063819344349927783_a_b_c @ M @ ( after_4736860933871809598_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ Io1 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) ) @ ( after_4736860933871809598_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ Io22 @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) ) @ Gamma )
               => ( distin3063819344349927783_a_b_c @ M @ ( after_4736860933871809598_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) @ Io1 ) @ ( after_4736860933871809598_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) @ Io22 ) @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ) ) ).

% distinguishes_after_initial_prepend
thf(fact_917_distinguishes__after__initial__prepend,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,Io1: list_P7785822056432494700tion_a,Io22: list_P7785822056432494700tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a,Gamma: list_P7785822056432494700tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( member2632207693412262165tion_a @ Io1 @ ( lS_Pro735550389098649289tion_a @ M @ ( initia7900160370904224596tion_a @ M ) ) )
       => ( ( member2632207693412262165tion_a @ Io22 @ ( lS_Pro735550389098649289tion_a @ M @ ( initia7900160370904224596tion_a @ M ) ) )
         => ( ( ( h_obs_2034362272866080824tion_a @ M @ ( after_4666548563309070908tion_a @ M @ ( initia7900160370904224596tion_a @ M ) @ Io1 ) @ X3 @ Y )
             != none_P2271573532998059335tion_a )
           => ( ( ( h_obs_2034362272866080824tion_a @ M @ ( after_4666548563309070908tion_a @ M @ ( initia7900160370904224596tion_a @ M ) @ Io22 ) @ X3 @ Y )
               != none_P2271573532998059335tion_a )
             => ( ( distin3570841250611833445tion_a @ M @ ( after_4666548563309070908tion_a @ M @ ( initia7900160370904224596tion_a @ M ) @ ( append7143236819997180545tion_a @ Io1 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) ) @ ( after_4666548563309070908tion_a @ M @ ( initia7900160370904224596tion_a @ M ) @ ( append7143236819997180545tion_a @ Io22 @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) ) @ Gamma )
               => ( distin3570841250611833445tion_a @ M @ ( after_4666548563309070908tion_a @ M @ ( initia7900160370904224596tion_a @ M ) @ Io1 ) @ ( after_4666548563309070908tion_a @ M @ ( initia7900160370904224596tion_a @ M ) @ Io22 ) @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ) ) ).

% distinguishes_after_initial_prepend
thf(fact_918_distinguishes__after__initial__prepend,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,Io1: list_P2261792721279755821tion_a,Io22: list_P2261792721279755821tion_a,X3: option_a,Y: option_a,Gamma: list_P2261792721279755821tion_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( member3771681913024528598tion_a @ Io1 @ ( lS_Pro9208888441041508234tion_a @ M @ ( initia1364244426282539541tion_a @ M ) ) )
       => ( ( member3771681913024528598tion_a @ Io22 @ ( lS_Pro9208888441041508234tion_a @ M @ ( initia1364244426282539541tion_a @ M ) ) )
         => ( ( ( h_obs_5157205410614601465tion_a @ M @ ( after_6806106828575809789tion_a @ M @ ( initia1364244426282539541tion_a @ M ) @ Io1 ) @ X3 @ Y )
             != none_P2271573532998059335tion_a )
           => ( ( ( h_obs_5157205410614601465tion_a @ M @ ( after_6806106828575809789tion_a @ M @ ( initia1364244426282539541tion_a @ M ) @ Io22 ) @ X3 @ Y )
               != none_P2271573532998059335tion_a )
             => ( ( distin149889238852854566tion_a @ M @ ( after_6806106828575809789tion_a @ M @ ( initia1364244426282539541tion_a @ M ) @ ( append7980291006836379842tion_a @ Io1 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) ) @ ( after_6806106828575809789tion_a @ M @ ( initia1364244426282539541tion_a @ M ) @ ( append7980291006836379842tion_a @ Io22 @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) ) @ Gamma )
               => ( distin149889238852854566tion_a @ M @ ( after_6806106828575809789tion_a @ M @ ( initia1364244426282539541tion_a @ M ) @ Io1 ) @ ( after_6806106828575809789tion_a @ M @ ( initia1364244426282539541tion_a @ M ) @ Io22 ) @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ Gamma ) ) ) ) ) ) ) ) ).

% distinguishes_after_initial_prepend
thf(fact_919_acyclic__paths__up__to__length__code,axiom,
    ( acycli3978232057192500090_a_b_c
    = ( ^ [M3: fsm_a_b_c,Q5: a,K2: nat] :
          ( if_set5301400340663253090od_c_a @ ( member_a @ Q5 @ ( states_a_b_c @ M3 ) )
          @ ( acycli8838441729103940241_a_b_c @ nil_Pr1342775757158464060od_c_a @ Q5
            @ ^ [X5: a] :
                ( case_o5084979270738236875od_c_a @ bot_bo8402128546026624985od_c_a
                @ ^ [Xs5: set_Pr272002107461315949od_c_a] : Xs5
                @ ( set_as7394328699852255621od_c_a @ ( transitions_a_b_c @ M3 ) @ X5 ) )
            @ ( insert_a @ Q5 @ bot_bot_set_a )
            @ K2 )
          @ bot_bo6236370880139903240od_c_a ) ) ) ).

% acyclic_paths_up_to_length_code
thf(fact_920_h__obs__language__append,axiom,
    ! [M: fsm_a_b_c,U: list_P903359562653991662od_b_c,X3: b,Y: c] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ U @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
       => ( ( ( h_obs_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ U ) @ X3 @ Y )
           != none_a )
         => ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ U @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) ) ) ) ) ).

% h_obs_language_append
thf(fact_921_h__obs__language__append,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,U: list_P7785822056432494700tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( member2632207693412262165tion_a @ U @ ( lS_a_P1924925719573064673tion_a @ M @ ( initia4477412644359670380tion_a @ M ) ) )
       => ( ( ( h_obs_502279454451148624tion_a @ M @ ( after_6104971424356839764tion_a @ M @ ( initia4477412644359670380tion_a @ M ) @ U ) @ X3 @ Y )
           != none_a )
         => ( member2632207693412262165tion_a @ ( append7143236819997180545tion_a @ U @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) @ ( lS_a_P1924925719573064673tion_a @ M @ ( initia4477412644359670380tion_a @ M ) ) ) ) ) ) ).

% h_obs_language_append
thf(fact_922_h__obs__language__append,axiom,
    ! [M: fsm_a_6349391259317406178tion_a,U: list_P2261792721279755821tion_a,X3: option_a,Y: option_a] :
      ( ( observ7071744495117927942tion_a @ M )
     => ( ( member3771681913024528598tion_a @ U @ ( lS_a_o2632099069520436386tion_a @ M @ ( initia5963972393380577581tion_a @ M ) ) )
       => ( ( ( h_obs_2762009199847384593tion_a @ M @ ( after_4826890630637713429tion_a @ M @ ( initia5963972393380577581tion_a @ M ) @ U ) @ X3 @ Y )
           != none_a )
         => ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ U @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_a_o2632099069520436386tion_a @ M @ ( initia5963972393380577581tion_a @ M ) ) ) ) ) ) ).

% h_obs_language_append
thf(fact_923_h__obs__language__append,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,U: list_P903359562653991662od_b_c,X3: b,Y: c] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ U @ ( lS_Pro5608194163545659851_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) ) )
       => ( ( ( h_obs_7784731882632891962_a_b_c @ M @ ( after_4736860933871809598_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) @ U ) @ X3 @ Y )
           != none_P2271573532998059335tion_a )
         => ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ U @ ( cons_P4529483553340347422od_b_c @ ( product_Pair_b_c @ X3 @ Y ) @ nil_Product_prod_b_c ) ) @ ( lS_Pro5608194163545659851_a_b_c @ M @ ( initia6916471901537514838_a_b_c @ M ) ) ) ) ) ) ).

% h_obs_language_append
thf(fact_924_h__obs__language__append,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,U: list_P7785822056432494700tion_a,X3: product_prod_b_c,Y: produc3509355604313844263tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( member2632207693412262165tion_a @ U @ ( lS_Pro735550389098649289tion_a @ M @ ( initia7900160370904224596tion_a @ M ) ) )
       => ( ( ( h_obs_2034362272866080824tion_a @ M @ ( after_4666548563309070908tion_a @ M @ ( initia7900160370904224596tion_a @ M ) @ U ) @ X3 @ Y )
           != none_P2271573532998059335tion_a )
         => ( member2632207693412262165tion_a @ ( append7143236819997180545tion_a @ U @ ( cons_P7206946803070396828tion_a @ ( produc7403377568244983126tion_a @ X3 @ Y ) @ nil_Pr596483954593762796tion_a ) ) @ ( lS_Pro735550389098649289tion_a @ M @ ( initia7900160370904224596tion_a @ M ) ) ) ) ) ) ).

% h_obs_language_append
thf(fact_925_h__obs__language__append,axiom,
    ! [M: fsm_Pr4012998041403890378tion_a,U: list_P2261792721279755821tion_a,X3: option_a,Y: option_a] :
      ( ( observ8953468558471342318tion_a @ M )
     => ( ( member3771681913024528598tion_a @ U @ ( lS_Pro9208888441041508234tion_a @ M @ ( initia1364244426282539541tion_a @ M ) ) )
       => ( ( ( h_obs_5157205410614601465tion_a @ M @ ( after_6806106828575809789tion_a @ M @ ( initia1364244426282539541tion_a @ M ) @ U ) @ X3 @ Y )
           != none_P2271573532998059335tion_a )
         => ( member3771681913024528598tion_a @ ( append7980291006836379842tion_a @ U @ ( cons_P8361449429630082525tion_a @ ( produc9011544418120257559tion_a @ X3 @ Y ) @ nil_Pr2074429324785754669tion_a ) ) @ ( lS_Pro9208888441041508234tion_a @ M @ ( initia1364244426282539541tion_a @ M ) ) ) ) ) ) ).

% h_obs_language_append
thf(fact_926_lists__of__length_Osimps_I1_J,axiom,
    ! [T: list_P7785822056432494700tion_a] :
      ( ( lists_8699066763821570497tion_a @ T @ zero_zero_nat )
      = ( cons_l4387309880990760226tion_a @ nil_Pr596483954593762796tion_a @ nil_li683225626544421234tion_a ) ) ).

% lists_of_length.simps(1)
thf(fact_927_lists__of__length_Osimps_I1_J,axiom,
    ! [T: list_P903359562653991662od_b_c] :
      ( ( lists_2361477089028216131od_b_c @ T @ zero_zero_nat )
      = ( cons_l342771267123639716od_b_c @ nil_Product_prod_b_c @ nil_li8071162985807626740od_b_c ) ) ).

% lists_of_length.simps(1)
thf(fact_928_lists__of__length_Osimps_I1_J,axiom,
    ! [T: list_b] :
      ( ( lists_of_length_b @ T @ zero_zero_nat )
      = ( cons_list_b @ nil_b @ nil_list_b ) ) ).

% lists_of_length.simps(1)
thf(fact_929_lists__of__length_Osimps_I1_J,axiom,
    ! [T: list_c] :
      ( ( lists_of_length_c @ T @ zero_zero_nat )
      = ( cons_list_c @ nil_c @ nil_list_c ) ) ).

% lists_of_length.simps(1)
thf(fact_930_lists__of__length_Osimps_I1_J,axiom,
    ! [T: list_a] :
      ( ( lists_of_length_a @ T @ zero_zero_nat )
      = ( cons_list_a @ nil_a @ nil_list_a ) ) ).

% lists_of_length.simps(1)
thf(fact_931_option_Osize_I3_J,axiom,
    ( ( size_size_option_a @ none_a )
    = ( suc @ zero_zero_nat ) ) ).

% option.size(3)
thf(fact_932_option_Osize_I3_J,axiom,
    ( ( size_s7449963968697296024tion_a @ none_P2271573532998059335tion_a )
    = ( suc @ zero_zero_nat ) ) ).

% option.size(3)
thf(fact_933_fsm__initial,axiom,
    ! [M: fsm_a_b_c] : ( member_a @ ( initial_a_b_c @ M ) @ ( states_a_b_c @ M ) ) ).

% fsm_initial
thf(fact_934_after__language__append__iff,axiom,
    ! [M: fsm_a_b_c,Alpha: list_P903359562653991662od_b_c,Gamma: list_P903359562653991662od_b_c,Beta: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Alpha @ Gamma ) @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
       => ( ( member6330420149250801815od_b_c @ Beta @ ( lS_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ Alpha @ Gamma ) ) ) )
          = ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Gamma @ Beta ) @ ( lS_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ Alpha ) ) ) ) ) ) ).

% after_language_append_iff
thf(fact_935_after__language__subset,axiom,
    ! [M: fsm_a_b_c,Alpha: list_P903359562653991662od_b_c,Gamma: list_P903359562653991662od_b_c,Beta: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Alpha @ Gamma ) @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
       => ( ( member6330420149250801815od_b_c @ Beta @ ( lS_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ Alpha @ Gamma ) ) ) )
         => ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Gamma @ Beta ) @ ( lS_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ Alpha ) ) ) ) ) ) ).

% after_language_subset
thf(fact_936_language__empty__io,axiom,
    ! [M: fsm_a_b_c] :
      ( ( ( ( inputs_a_b_c @ M )
          = bot_bot_set_b )
        | ( ( outputs_a_b_c @ M )
          = bot_bot_set_c ) )
     => ( ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) )
        = ( insert6227932334100060350od_b_c @ nil_Product_prod_b_c @ bot_bo4166481423041325370od_b_c ) ) ) ).

% language_empty_io
thf(fact_937_distinguish__prepend__initial,axiom,
    ! [M: fsm_a_b_c,Io1: list_P903359562653991662od_b_c,Io: list_P903359562653991662od_b_c,Io22: list_P903359562653991662od_b_c,W2: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( distinguishes_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ Io1 @ Io ) ) @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ Io22 @ Io ) ) @ W2 )
       => ( ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io1 @ Io ) @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
         => ( ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io22 @ Io ) @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
           => ( distinguishes_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ Io1 ) @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ Io22 ) @ ( append2547753245680614915od_b_c @ Io @ W2 ) ) ) ) ) ) ).

% distinguish_prepend_initial
thf(fact_938_option_Osize_I4_J,axiom,
    ! [X2: a] :
      ( ( size_size_option_a @ ( some_a @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_939_option_Osize_I4_J,axiom,
    ! [X2: produc1359548802814378470tion_a] :
      ( ( size_s7449963968697296024tion_a @ ( some_P2468934990214623435tion_a @ X2 ) )
      = ( suc @ zero_zero_nat ) ) ).

% option.size(4)
thf(fact_940_minimally__distinguishes__no__prefix,axiom,
    ! [M: fsm_a_b_c,U: list_P903359562653991662od_b_c,W2: list_P903359562653991662od_b_c,V2: list_P903359562653991662od_b_c,W: list_P903359562653991662od_b_c,W3: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ U @ W2 ) @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
       => ( ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ V2 @ W2 ) @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
         => ( ( minima243535863231358885_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ U ) @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ V2 ) @ ( append2547753245680614915od_b_c @ W2 @ ( append2547753245680614915od_b_c @ W @ W3 ) ) )
           => ( ( W != nil_Product_prod_b_c )
             => ~ ( distinguishes_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ U @ W2 ) ) @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ V2 @ W2 ) ) @ W3 ) ) ) ) ) ) ).

% minimally_distinguishes_no_prefix
thf(fact_941_observable__paths__for__io,axiom,
    ! [M: fsm_a_b_c,Io: list_P903359562653991662od_b_c,Q: a] :
      ( ( observable_a_b_c @ M )
     => ( ( member6330420149250801815od_b_c @ Io @ ( lS_a_b_c @ M @ Q ) )
       => ~ ! [P6: list_P6327159017948738492od_c_a] :
              ( ( paths_for_io_a_b_c @ M @ Q @ Io )
             != ( insert4789241225314331020od_c_a @ P6 @ bot_bo6236370880139903240od_c_a ) ) ) ) ).

% observable_paths_for_io
thf(fact_942_length__0__conv,axiom,
    ! [Xs: list_P7785822056432494700tion_a] :
      ( ( ( size_s7657018318793033432tion_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_Pr596483954593762796tion_a ) ) ).

% length_0_conv
thf(fact_943_length__0__conv,axiom,
    ! [Xs: list_P903359562653991662od_b_c] :
      ( ( ( size_s3392097710323735898od_b_c @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_Product_prod_b_c ) ) ).

% length_0_conv
thf(fact_944_length__0__conv,axiom,
    ! [Xs: list_b] :
      ( ( ( size_size_list_b @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_b ) ) ).

% length_0_conv
thf(fact_945_length__0__conv,axiom,
    ! [Xs: list_c] :
      ( ( ( size_size_list_c @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_c ) ) ).

% length_0_conv
thf(fact_946_length__0__conv,axiom,
    ! [Xs: list_a] :
      ( ( ( size_size_list_a @ Xs )
        = zero_zero_nat )
      = ( Xs = nil_a ) ) ).

% length_0_conv
thf(fact_947_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_b,Ws: list_b,P: list_b > list_b > list_b > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_b @ Zs2 ) )
       => ( ( ( size_size_list_b @ Zs2 )
            = ( size_size_list_b @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_b @ nil_b )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: b,Zs3: list_b,W4: b,Ws2: list_b] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_b @ Zs3 ) )
                   => ( ( ( size_size_list_b @ Zs3 )
                        = ( size_size_list_b @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_b @ Z4 @ Zs3 ) @ ( cons_b @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_948_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_b,Ws: list_c,P: list_b > list_b > list_b > list_c > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_b @ Zs2 ) )
       => ( ( ( size_size_list_b @ Zs2 )
            = ( size_size_list_c @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_b @ nil_c )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: b,Zs3: list_b,W4: c,Ws2: list_c] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_b @ Zs3 ) )
                   => ( ( ( size_size_list_b @ Zs3 )
                        = ( size_size_list_c @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_b @ Z4 @ Zs3 ) @ ( cons_c @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_949_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_b,Ws: list_a,P: list_b > list_b > list_b > list_a > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_b @ Zs2 ) )
       => ( ( ( size_size_list_b @ Zs2 )
            = ( size_size_list_a @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_b @ nil_a )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: b,Zs3: list_b,W4: a,Ws2: list_a] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_b @ Zs3 ) )
                   => ( ( ( size_size_list_b @ Zs3 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_b @ Z4 @ Zs3 ) @ ( cons_a @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_950_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_c,Ws: list_b,P: list_b > list_b > list_c > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_c @ Zs2 ) )
       => ( ( ( size_size_list_c @ Zs2 )
            = ( size_size_list_b @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_c @ nil_b )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: c,Zs3: list_c,W4: b,Ws2: list_b] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_c @ Zs3 ) )
                   => ( ( ( size_size_list_c @ Zs3 )
                        = ( size_size_list_b @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_c @ Z4 @ Zs3 ) @ ( cons_b @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_951_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_c,Ws: list_c,P: list_b > list_b > list_c > list_c > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_c @ Zs2 ) )
       => ( ( ( size_size_list_c @ Zs2 )
            = ( size_size_list_c @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_c @ nil_c )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: c,Zs3: list_c,W4: c,Ws2: list_c] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_c @ Zs3 ) )
                   => ( ( ( size_size_list_c @ Zs3 )
                        = ( size_size_list_c @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_c @ Z4 @ Zs3 ) @ ( cons_c @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_952_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_c,Ws: list_a,P: list_b > list_b > list_c > list_a > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_c @ Zs2 ) )
       => ( ( ( size_size_list_c @ Zs2 )
            = ( size_size_list_a @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_c @ nil_a )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: c,Zs3: list_c,W4: a,Ws2: list_a] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_c @ Zs3 ) )
                   => ( ( ( size_size_list_c @ Zs3 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_c @ Z4 @ Zs3 ) @ ( cons_a @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_953_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_a,Ws: list_b,P: list_b > list_b > list_a > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_a @ Zs2 ) )
       => ( ( ( size_size_list_a @ Zs2 )
            = ( size_size_list_b @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_a @ nil_b )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: a,Zs3: list_a,W4: b,Ws2: list_b] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_a @ Zs3 ) )
                   => ( ( ( size_size_list_a @ Zs3 )
                        = ( size_size_list_b @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_a @ Z4 @ Zs3 ) @ ( cons_b @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_954_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_a,Ws: list_c,P: list_b > list_b > list_a > list_c > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_a @ Zs2 ) )
       => ( ( ( size_size_list_a @ Zs2 )
            = ( size_size_list_c @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_a @ nil_c )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: a,Zs3: list_a,W4: c,Ws2: list_c] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_a @ Zs3 ) )
                   => ( ( ( size_size_list_a @ Zs3 )
                        = ( size_size_list_c @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_a @ Z4 @ Zs3 ) @ ( cons_c @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_955_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_a,Ws: list_a,P: list_b > list_b > list_a > list_a > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_a @ Zs2 ) )
       => ( ( ( size_size_list_a @ Zs2 )
            = ( size_size_list_a @ Ws ) )
         => ( ( P @ nil_b @ nil_b @ nil_a @ nil_a )
           => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: a,Zs3: list_a,W4: a,Ws2: list_a] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_b @ Ys3 ) )
                 => ( ( ( size_size_list_b @ Ys3 )
                      = ( size_size_list_a @ Zs3 ) )
                   => ( ( ( size_size_list_a @ Zs3 )
                        = ( size_size_list_a @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_a @ Z4 @ Zs3 ) @ ( cons_a @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_956_list__induct4,axiom,
    ! [Xs: list_b,Ys2: list_c,Zs2: list_b,Ws: list_b,P: list_b > list_c > list_b > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( ( size_size_list_c @ Ys2 )
          = ( size_size_list_b @ Zs2 ) )
       => ( ( ( size_size_list_b @ Zs2 )
            = ( size_size_list_b @ Ws ) )
         => ( ( P @ nil_b @ nil_c @ nil_b @ nil_b )
           => ( ! [X: b,Xs2: list_b,Y2: c,Ys3: list_c,Z4: b,Zs3: list_b,W4: b,Ws2: list_b] :
                  ( ( ( size_size_list_b @ Xs2 )
                    = ( size_size_list_c @ Ys3 ) )
                 => ( ( ( size_size_list_c @ Ys3 )
                      = ( size_size_list_b @ Zs3 ) )
                   => ( ( ( size_size_list_b @ Zs3 )
                        = ( size_size_list_b @ Ws2 ) )
                     => ( ( P @ Xs2 @ Ys3 @ Zs3 @ Ws2 )
                       => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) @ ( cons_b @ Z4 @ Zs3 ) @ ( cons_b @ W4 @ Ws2 ) ) ) ) ) )
             => ( P @ Xs @ Ys2 @ Zs2 @ Ws ) ) ) ) ) ) ).

% list_induct4
thf(fact_957_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_b,P: list_b > list_b > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_b @ Zs2 ) )
       => ( ( P @ nil_b @ nil_b @ nil_b )
         => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: b,Zs3: list_b] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_b @ Ys3 ) )
               => ( ( ( size_size_list_b @ Ys3 )
                    = ( size_size_list_b @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_b @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_958_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_c,P: list_b > list_b > list_c > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_c @ Zs2 ) )
       => ( ( P @ nil_b @ nil_b @ nil_c )
         => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: c,Zs3: list_c] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_b @ Ys3 ) )
               => ( ( ( size_size_list_b @ Ys3 )
                    = ( size_size_list_c @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_c @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_959_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_b,Zs2: list_a,P: list_b > list_b > list_a > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_a @ Zs2 ) )
       => ( ( P @ nil_b @ nil_b @ nil_a )
         => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b,Z4: a,Zs3: list_a] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_b @ Ys3 ) )
               => ( ( ( size_size_list_b @ Ys3 )
                    = ( size_size_list_a @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_a @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_960_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_c,Zs2: list_b,P: list_b > list_c > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( ( size_size_list_c @ Ys2 )
          = ( size_size_list_b @ Zs2 ) )
       => ( ( P @ nil_b @ nil_c @ nil_b )
         => ( ! [X: b,Xs2: list_b,Y2: c,Ys3: list_c,Z4: b,Zs3: list_b] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_c @ Ys3 ) )
               => ( ( ( size_size_list_c @ Ys3 )
                    = ( size_size_list_b @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) @ ( cons_b @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_961_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_c,Zs2: list_c,P: list_b > list_c > list_c > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( ( size_size_list_c @ Ys2 )
          = ( size_size_list_c @ Zs2 ) )
       => ( ( P @ nil_b @ nil_c @ nil_c )
         => ( ! [X: b,Xs2: list_b,Y2: c,Ys3: list_c,Z4: c,Zs3: list_c] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_c @ Ys3 ) )
               => ( ( ( size_size_list_c @ Ys3 )
                    = ( size_size_list_c @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) @ ( cons_c @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_962_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_c,Zs2: list_a,P: list_b > list_c > list_a > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( ( size_size_list_c @ Ys2 )
          = ( size_size_list_a @ Zs2 ) )
       => ( ( P @ nil_b @ nil_c @ nil_a )
         => ( ! [X: b,Xs2: list_b,Y2: c,Ys3: list_c,Z4: a,Zs3: list_a] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_c @ Ys3 ) )
               => ( ( ( size_size_list_c @ Ys3 )
                    = ( size_size_list_a @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) @ ( cons_a @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_963_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_a,Zs2: list_b,P: list_b > list_a > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_b @ Zs2 ) )
       => ( ( P @ nil_b @ nil_a @ nil_b )
         => ( ! [X: b,Xs2: list_b,Y2: a,Ys3: list_a,Z4: b,Zs3: list_b] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_a @ Ys3 ) )
               => ( ( ( size_size_list_a @ Ys3 )
                    = ( size_size_list_b @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) @ ( cons_b @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_964_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_a,Zs2: list_c,P: list_b > list_a > list_c > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_c @ Zs2 ) )
       => ( ( P @ nil_b @ nil_a @ nil_c )
         => ( ! [X: b,Xs2: list_b,Y2: a,Ys3: list_a,Z4: c,Zs3: list_c] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_a @ Ys3 ) )
               => ( ( ( size_size_list_a @ Ys3 )
                    = ( size_size_list_c @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) @ ( cons_c @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_965_list__induct3,axiom,
    ! [Xs: list_b,Ys2: list_a,Zs2: list_a,P: list_b > list_a > list_a > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( ( size_size_list_a @ Ys2 )
          = ( size_size_list_a @ Zs2 ) )
       => ( ( P @ nil_b @ nil_a @ nil_a )
         => ( ! [X: b,Xs2: list_b,Y2: a,Ys3: list_a,Z4: a,Zs3: list_a] :
                ( ( ( size_size_list_b @ Xs2 )
                  = ( size_size_list_a @ Ys3 ) )
               => ( ( ( size_size_list_a @ Ys3 )
                    = ( size_size_list_a @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) @ ( cons_a @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_966_list__induct3,axiom,
    ! [Xs: list_c,Ys2: list_b,Zs2: list_b,P: list_c > list_b > list_b > $o] :
      ( ( ( size_size_list_c @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( ( size_size_list_b @ Ys2 )
          = ( size_size_list_b @ Zs2 ) )
       => ( ( P @ nil_c @ nil_b @ nil_b )
         => ( ! [X: c,Xs2: list_c,Y2: b,Ys3: list_b,Z4: b,Zs3: list_b] :
                ( ( ( size_size_list_c @ Xs2 )
                  = ( size_size_list_b @ Ys3 ) )
               => ( ( ( size_size_list_b @ Ys3 )
                    = ( size_size_list_b @ Zs3 ) )
                 => ( ( P @ Xs2 @ Ys3 @ Zs3 )
                   => ( P @ ( cons_c @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) @ ( cons_b @ Z4 @ Zs3 ) ) ) ) )
           => ( P @ Xs @ Ys2 @ Zs2 ) ) ) ) ) ).

% list_induct3
thf(fact_967_list__induct2,axiom,
    ! [Xs: list_b,Ys2: list_b,P: list_b > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( P @ nil_b @ nil_b )
       => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b] :
              ( ( ( size_size_list_b @ Xs2 )
                = ( size_size_list_b @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_968_list__induct2,axiom,
    ! [Xs: list_b,Ys2: list_c,P: list_b > list_c > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( P @ nil_b @ nil_c )
       => ( ! [X: b,Xs2: list_b,Y2: c,Ys3: list_c] :
              ( ( ( size_size_list_b @ Xs2 )
                = ( size_size_list_c @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_969_list__induct2,axiom,
    ! [Xs: list_b,Ys2: list_a,P: list_b > list_a > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( P @ nil_b @ nil_a )
       => ( ! [X: b,Xs2: list_b,Y2: a,Ys3: list_a] :
              ( ( ( size_size_list_b @ Xs2 )
                = ( size_size_list_a @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_b @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_970_list__induct2,axiom,
    ! [Xs: list_c,Ys2: list_b,P: list_c > list_b > $o] :
      ( ( ( size_size_list_c @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( P @ nil_c @ nil_b )
       => ( ! [X: c,Xs2: list_c,Y2: b,Ys3: list_b] :
              ( ( ( size_size_list_c @ Xs2 )
                = ( size_size_list_b @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_971_list__induct2,axiom,
    ! [Xs: list_c,Ys2: list_c,P: list_c > list_c > $o] :
      ( ( ( size_size_list_c @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( P @ nil_c @ nil_c )
       => ( ! [X: c,Xs2: list_c,Y2: c,Ys3: list_c] :
              ( ( ( size_size_list_c @ Xs2 )
                = ( size_size_list_c @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_972_list__induct2,axiom,
    ! [Xs: list_c,Ys2: list_a,P: list_c > list_a > $o] :
      ( ( ( size_size_list_c @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( P @ nil_c @ nil_a )
       => ( ! [X: c,Xs2: list_c,Y2: a,Ys3: list_a] :
              ( ( ( size_size_list_c @ Xs2 )
                = ( size_size_list_a @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_c @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_973_list__induct2,axiom,
    ! [Xs: list_a,Ys2: list_b,P: list_a > list_b > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( P @ nil_a @ nil_b )
       => ( ! [X: a,Xs2: list_a,Y2: b,Ys3: list_b] :
              ( ( ( size_size_list_a @ Xs2 )
                = ( size_size_list_b @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_974_list__induct2,axiom,
    ! [Xs: list_a,Ys2: list_c,P: list_a > list_c > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( P @ nil_a @ nil_c )
       => ( ! [X: a,Xs2: list_a,Y2: c,Ys3: list_c] :
              ( ( ( size_size_list_a @ Xs2 )
                = ( size_size_list_c @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_c @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_975_list__induct2,axiom,
    ! [Xs: list_a,Ys2: list_a,P: list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( P @ nil_a @ nil_a )
       => ( ! [X: a,Xs2: list_a,Y2: a,Ys3: list_a] :
              ( ( ( size_size_list_a @ Xs2 )
                = ( size_size_list_a @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_a @ X @ Xs2 ) @ ( cons_a @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_976_list__induct2,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_b,P: list_P903359562653991662od_b_c > list_b > $o] :
      ( ( ( size_s3392097710323735898od_b_c @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( P @ nil_Product_prod_b_c @ nil_b )
       => ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Y2: b,Ys3: list_b] :
              ( ( ( size_s3392097710323735898od_b_c @ Xs2 )
                = ( size_size_list_b @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) @ ( cons_b @ Y2 @ Ys3 ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% list_induct2
thf(fact_977_list_Osize_I3_J,axiom,
    ( ( size_s7657018318793033432tion_a @ nil_Pr596483954593762796tion_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_978_list_Osize_I3_J,axiom,
    ( ( size_s3392097710323735898od_b_c @ nil_Product_prod_b_c )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_979_list_Osize_I3_J,axiom,
    ( ( size_size_list_b @ nil_b )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_980_list_Osize_I3_J,axiom,
    ( ( size_size_list_c @ nil_c )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_981_list_Osize_I3_J,axiom,
    ( ( size_size_list_a @ nil_a )
    = zero_zero_nat ) ).

% list.size(3)
thf(fact_982_rev__induct2,axiom,
    ! [Xs: list_b,Ys2: list_b,P: list_b > list_b > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( P @ nil_b @ nil_b )
       => ( ! [X: b,Xs2: list_b,Y2: b,Ys3: list_b] :
              ( ( ( size_size_list_b @ Xs2 )
                = ( size_size_list_b @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_b @ Xs2 @ ( cons_b @ X @ nil_b ) ) @ ( append_b @ Ys3 @ ( cons_b @ Y2 @ nil_b ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_983_rev__induct2,axiom,
    ! [Xs: list_b,Ys2: list_c,P: list_b > list_c > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( P @ nil_b @ nil_c )
       => ( ! [X: b,Xs2: list_b,Y2: c,Ys3: list_c] :
              ( ( ( size_size_list_b @ Xs2 )
                = ( size_size_list_c @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_b @ Xs2 @ ( cons_b @ X @ nil_b ) ) @ ( append_c @ Ys3 @ ( cons_c @ Y2 @ nil_c ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_984_rev__induct2,axiom,
    ! [Xs: list_b,Ys2: list_a,P: list_b > list_a > $o] :
      ( ( ( size_size_list_b @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( P @ nil_b @ nil_a )
       => ( ! [X: b,Xs2: list_b,Y2: a,Ys3: list_a] :
              ( ( ( size_size_list_b @ Xs2 )
                = ( size_size_list_a @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_b @ Xs2 @ ( cons_b @ X @ nil_b ) ) @ ( append_a @ Ys3 @ ( cons_a @ Y2 @ nil_a ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_985_rev__induct2,axiom,
    ! [Xs: list_c,Ys2: list_b,P: list_c > list_b > $o] :
      ( ( ( size_size_list_c @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( P @ nil_c @ nil_b )
       => ( ! [X: c,Xs2: list_c,Y2: b,Ys3: list_b] :
              ( ( ( size_size_list_c @ Xs2 )
                = ( size_size_list_b @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_c @ Xs2 @ ( cons_c @ X @ nil_c ) ) @ ( append_b @ Ys3 @ ( cons_b @ Y2 @ nil_b ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_986_rev__induct2,axiom,
    ! [Xs: list_c,Ys2: list_c,P: list_c > list_c > $o] :
      ( ( ( size_size_list_c @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( P @ nil_c @ nil_c )
       => ( ! [X: c,Xs2: list_c,Y2: c,Ys3: list_c] :
              ( ( ( size_size_list_c @ Xs2 )
                = ( size_size_list_c @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_c @ Xs2 @ ( cons_c @ X @ nil_c ) ) @ ( append_c @ Ys3 @ ( cons_c @ Y2 @ nil_c ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_987_rev__induct2,axiom,
    ! [Xs: list_c,Ys2: list_a,P: list_c > list_a > $o] :
      ( ( ( size_size_list_c @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( P @ nil_c @ nil_a )
       => ( ! [X: c,Xs2: list_c,Y2: a,Ys3: list_a] :
              ( ( ( size_size_list_c @ Xs2 )
                = ( size_size_list_a @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_c @ Xs2 @ ( cons_c @ X @ nil_c ) ) @ ( append_a @ Ys3 @ ( cons_a @ Y2 @ nil_a ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_988_rev__induct2,axiom,
    ! [Xs: list_a,Ys2: list_b,P: list_a > list_b > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( P @ nil_a @ nil_b )
       => ( ! [X: a,Xs2: list_a,Y2: b,Ys3: list_b] :
              ( ( ( size_size_list_a @ Xs2 )
                = ( size_size_list_b @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) @ ( append_b @ Ys3 @ ( cons_b @ Y2 @ nil_b ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_989_rev__induct2,axiom,
    ! [Xs: list_a,Ys2: list_c,P: list_a > list_c > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_c @ Ys2 ) )
     => ( ( P @ nil_a @ nil_c )
       => ( ! [X: a,Xs2: list_a,Y2: c,Ys3: list_c] :
              ( ( ( size_size_list_a @ Xs2 )
                = ( size_size_list_c @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) @ ( append_c @ Ys3 @ ( cons_c @ Y2 @ nil_c ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_990_rev__induct2,axiom,
    ! [Xs: list_a,Ys2: list_a,P: list_a > list_a > $o] :
      ( ( ( size_size_list_a @ Xs )
        = ( size_size_list_a @ Ys2 ) )
     => ( ( P @ nil_a @ nil_a )
       => ( ! [X: a,Xs2: list_a,Y2: a,Ys3: list_a] :
              ( ( ( size_size_list_a @ Xs2 )
                = ( size_size_list_a @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append_a @ Xs2 @ ( cons_a @ X @ nil_a ) ) @ ( append_a @ Ys3 @ ( cons_a @ Y2 @ nil_a ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_991_rev__induct2,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_b,P: list_P903359562653991662od_b_c > list_b > $o] :
      ( ( ( size_s3392097710323735898od_b_c @ Xs )
        = ( size_size_list_b @ Ys2 ) )
     => ( ( P @ nil_Product_prod_b_c @ nil_b )
       => ( ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c,Y2: b,Ys3: list_b] :
              ( ( ( size_s3392097710323735898od_b_c @ Xs2 )
                = ( size_size_list_b @ Ys3 ) )
             => ( ( P @ Xs2 @ Ys3 )
               => ( P @ ( append2547753245680614915od_b_c @ Xs2 @ ( cons_P4529483553340347422od_b_c @ X @ nil_Product_prod_b_c ) ) @ ( append_b @ Ys3 @ ( cons_b @ Y2 @ nil_b ) ) ) ) )
         => ( P @ Xs @ Ys2 ) ) ) ) ).

% rev_induct2
thf(fact_992_same__length__different,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( Xs != Ys2 )
     => ( ( ( size_s7657018318793033432tion_a @ Xs )
          = ( size_s7657018318793033432tion_a @ Ys2 ) )
       => ? [Pre: list_P7785822056432494700tion_a,X: produc1359548802814378470tion_a,Xs4: list_P7785822056432494700tion_a,Y2: produc1359548802814378470tion_a,Ys6: list_P7785822056432494700tion_a] :
            ( ( X != Y2 )
            & ( Xs
              = ( append7143236819997180545tion_a @ Pre @ ( append7143236819997180545tion_a @ ( cons_P7206946803070396828tion_a @ X @ nil_Pr596483954593762796tion_a ) @ Xs4 ) ) )
            & ( Ys2
              = ( append7143236819997180545tion_a @ Pre @ ( append7143236819997180545tion_a @ ( cons_P7206946803070396828tion_a @ Y2 @ nil_Pr596483954593762796tion_a ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_993_same__length__different,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( Xs != Ys2 )
     => ( ( ( size_s3392097710323735898od_b_c @ Xs )
          = ( size_s3392097710323735898od_b_c @ Ys2 ) )
       => ? [Pre: list_P903359562653991662od_b_c,X: product_prod_b_c,Xs4: list_P903359562653991662od_b_c,Y2: product_prod_b_c,Ys6: list_P903359562653991662od_b_c] :
            ( ( X != Y2 )
            & ( Xs
              = ( append2547753245680614915od_b_c @ Pre @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ X @ nil_Product_prod_b_c ) @ Xs4 ) ) )
            & ( Ys2
              = ( append2547753245680614915od_b_c @ Pre @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Y2 @ nil_Product_prod_b_c ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_994_same__length__different,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( Xs != Ys2 )
     => ( ( ( size_size_list_b @ Xs )
          = ( size_size_list_b @ Ys2 ) )
       => ? [Pre: list_b,X: b,Xs4: list_b,Y2: b,Ys6: list_b] :
            ( ( X != Y2 )
            & ( Xs
              = ( append_b @ Pre @ ( append_b @ ( cons_b @ X @ nil_b ) @ Xs4 ) ) )
            & ( Ys2
              = ( append_b @ Pre @ ( append_b @ ( cons_b @ Y2 @ nil_b ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_995_same__length__different,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( Xs != Ys2 )
     => ( ( ( size_size_list_c @ Xs )
          = ( size_size_list_c @ Ys2 ) )
       => ? [Pre: list_c,X: c,Xs4: list_c,Y2: c,Ys6: list_c] :
            ( ( X != Y2 )
            & ( Xs
              = ( append_c @ Pre @ ( append_c @ ( cons_c @ X @ nil_c ) @ Xs4 ) ) )
            & ( Ys2
              = ( append_c @ Pre @ ( append_c @ ( cons_c @ Y2 @ nil_c ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_996_same__length__different,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( Xs != Ys2 )
     => ( ( ( size_size_list_a @ Xs )
          = ( size_size_list_a @ Ys2 ) )
       => ? [Pre: list_a,X: a,Xs4: list_a,Y2: a,Ys6: list_a] :
            ( ( X != Y2 )
            & ( Xs
              = ( append_a @ Pre @ ( append_a @ ( cons_a @ X @ nil_a ) @ Xs4 ) ) )
            & ( Ys2
              = ( append_a @ Pre @ ( append_a @ ( cons_a @ Y2 @ nil_a ) @ Ys6 ) ) ) ) ) ) ).

% same_length_different
thf(fact_997_length__Suc__conv__rev,axiom,
    ! [Xs: list_P7785822056432494700tion_a,N: nat] :
      ( ( ( size_s7657018318793033432tion_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y3: produc1359548802814378470tion_a,Ys: list_P7785822056432494700tion_a] :
            ( ( Xs
              = ( append7143236819997180545tion_a @ Ys @ ( cons_P7206946803070396828tion_a @ Y3 @ nil_Pr596483954593762796tion_a ) ) )
            & ( ( size_s7657018318793033432tion_a @ Ys )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_998_length__Suc__conv__rev,axiom,
    ! [Xs: list_P903359562653991662od_b_c,N: nat] :
      ( ( ( size_s3392097710323735898od_b_c @ Xs )
        = ( suc @ N ) )
      = ( ? [Y3: product_prod_b_c,Ys: list_P903359562653991662od_b_c] :
            ( ( Xs
              = ( append2547753245680614915od_b_c @ Ys @ ( cons_P4529483553340347422od_b_c @ Y3 @ nil_Product_prod_b_c ) ) )
            & ( ( size_s3392097710323735898od_b_c @ Ys )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_999_length__Suc__conv__rev,axiom,
    ! [Xs: list_b,N: nat] :
      ( ( ( size_size_list_b @ Xs )
        = ( suc @ N ) )
      = ( ? [Y3: b,Ys: list_b] :
            ( ( Xs
              = ( append_b @ Ys @ ( cons_b @ Y3 @ nil_b ) ) )
            & ( ( size_size_list_b @ Ys )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1000_length__Suc__conv__rev,axiom,
    ! [Xs: list_c,N: nat] :
      ( ( ( size_size_list_c @ Xs )
        = ( suc @ N ) )
      = ( ? [Y3: c,Ys: list_c] :
            ( ( Xs
              = ( append_c @ Ys @ ( cons_c @ Y3 @ nil_c ) ) )
            & ( ( size_size_list_c @ Ys )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1001_length__Suc__conv__rev,axiom,
    ! [Xs: list_a,N: nat] :
      ( ( ( size_size_list_a @ Xs )
        = ( suc @ N ) )
      = ( ? [Y3: a,Ys: list_a] :
            ( ( Xs
              = ( append_a @ Ys @ ( cons_a @ Y3 @ nil_a ) ) )
            & ( ( size_size_list_a @ Ys )
              = N ) ) ) ) ).

% length_Suc_conv_rev
thf(fact_1002_minimally__distinguishes__ex,axiom,
    ! [Q16: a,M: fsm_a_b_c,Q24: a] :
      ( ( member_a @ Q16 @ ( states_a_b_c @ M ) )
     => ( ( member_a @ Q24 @ ( states_a_b_c @ M ) )
       => ( ( ( lS_a_b_c @ M @ Q16 )
           != ( lS_a_b_c @ M @ Q24 ) )
         => ~ ! [V: list_P903359562653991662od_b_c] :
                ~ ( minima243535863231358885_a_b_c @ M @ Q16 @ Q24 @ V ) ) ) ) ).

% minimally_distinguishes_ex
thf(fact_1003_length__append__singleton,axiom,
    ! [Xs: list_P7785822056432494700tion_a,X3: produc1359548802814378470tion_a] :
      ( ( size_s7657018318793033432tion_a @ ( append7143236819997180545tion_a @ Xs @ ( cons_P7206946803070396828tion_a @ X3 @ nil_Pr596483954593762796tion_a ) ) )
      = ( suc @ ( size_s7657018318793033432tion_a @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1004_length__append__singleton,axiom,
    ! [Xs: list_P903359562653991662od_b_c,X3: product_prod_b_c] :
      ( ( size_s3392097710323735898od_b_c @ ( append2547753245680614915od_b_c @ Xs @ ( cons_P4529483553340347422od_b_c @ X3 @ nil_Product_prod_b_c ) ) )
      = ( suc @ ( size_s3392097710323735898od_b_c @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1005_length__append__singleton,axiom,
    ! [Xs: list_b,X3: b] :
      ( ( size_size_list_b @ ( append_b @ Xs @ ( cons_b @ X3 @ nil_b ) ) )
      = ( suc @ ( size_size_list_b @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1006_length__append__singleton,axiom,
    ! [Xs: list_c,X3: c] :
      ( ( size_size_list_c @ ( append_c @ Xs @ ( cons_c @ X3 @ nil_c ) ) )
      = ( suc @ ( size_size_list_c @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1007_length__append__singleton,axiom,
    ! [Xs: list_a,X3: a] :
      ( ( size_size_list_a @ ( append_a @ Xs @ ( cons_a @ X3 @ nil_a ) ) )
      = ( suc @ ( size_size_list_a @ Xs ) ) ) ).

% length_append_singleton
thf(fact_1008_paths__for__io__set__code,axiom,
    ( paths_for_io_a_b_c
    = ( ^ [M3: fsm_a_b_c,Q5: a,Io5: list_P903359562653991662od_b_c] : ( if_set5301400340663253090od_c_a @ ( member_a @ Q5 @ ( states_a_b_c @ M3 ) ) @ ( paths_for_io_a_b_c2 @ ( h_a_b_c @ M3 ) @ Io5 @ Q5 @ nil_Pr1342775757158464060od_c_a ) @ bot_bo6236370880139903240od_c_a ) ) ) ).

% paths_for_io_set_code
thf(fact_1009_minimally__distinguishes__after__append__initial,axiom,
    ! [M: fsm_a_b_c,U: list_P903359562653991662od_b_c,V2: list_P903359562653991662od_b_c,W2: list_P903359562653991662od_b_c,W: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( minimal_a_b_c @ M )
       => ( ( member6330420149250801815od_b_c @ U @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
         => ( ( member6330420149250801815od_b_c @ V2 @ ( lS_a_b_c @ M @ ( initial_a_b_c @ M ) ) )
           => ( ( minima243535863231358885_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ U ) @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ V2 ) @ ( append2547753245680614915od_b_c @ W2 @ W ) )
             => ( ( W != nil_Product_prod_b_c )
               => ( minima243535863231358885_a_b_c @ M @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ U @ W2 ) ) @ ( after_a_b_c @ M @ ( initial_a_b_c @ M ) @ ( append2547753245680614915od_b_c @ V2 @ W2 ) ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append_initial
thf(fact_1010_create__fsm__from__self,axiom,
    ! [M4: fsm_a_b_c] :
      ( M4
      = ( create3933655864275538163_a_b_c @ ( initial_a_b_c @ M4 ) @ ( states_a_b_c @ M4 ) @ ( inputs_a_b_c @ M4 ) @ ( outputs_a_b_c @ M4 ) @ ( transitions_a_b_c @ M4 ) ) ) ).

% create_fsm_from_self
thf(fact_1011_minimal__alt__def,axiom,
    ( minimal_a_b_c
    = ( ^ [M3: fsm_a_b_c] :
        ! [Q5: a,Q6: a] :
          ( ( member_a @ Q5 @ ( states_a_b_c @ M3 ) )
         => ( ( member_a @ Q6 @ ( states_a_b_c @ M3 ) )
           => ( ( ( lS_a_b_c @ M3 @ Q5 )
                = ( lS_a_b_c @ M3 @ Q6 ) )
             => ( Q5 = Q6 ) ) ) ) ) ) ).

% minimal_alt_def
thf(fact_1012_minimal_Osimps,axiom,
    ( minimal_a_b_c
    = ( ^ [M3: fsm_a_b_c] :
        ! [X5: a] :
          ( ( member_a @ X5 @ ( states_a_b_c @ M3 ) )
         => ! [Y3: a] :
              ( ( member_a @ Y3 @ ( states_a_b_c @ M3 ) )
             => ( ( X5 != Y3 )
               => ( ( lS_a_b_c @ M3 @ X5 )
                 != ( lS_a_b_c @ M3 @ Y3 ) ) ) ) ) ) ) ).

% minimal.simps
thf(fact_1013_minimal_Oelims_I1_J,axiom,
    ! [X3: fsm_a_b_c,Y: $o] :
      ( ( ( minimal_a_b_c @ X3 )
        = Y )
     => ( Y
        = ( ! [X5: a] :
              ( ( member_a @ X5 @ ( states_a_b_c @ X3 ) )
             => ! [Y3: a] :
                  ( ( member_a @ Y3 @ ( states_a_b_c @ X3 ) )
                 => ( ( X5 != Y3 )
                   => ( ( lS_a_b_c @ X3 @ X5 )
                     != ( lS_a_b_c @ X3 @ Y3 ) ) ) ) ) ) ) ) ).

% minimal.elims(1)
thf(fact_1014_minimal_Oelims_I2_J,axiom,
    ! [X3: fsm_a_b_c] :
      ( ( minimal_a_b_c @ X3 )
     => ! [X7: a] :
          ( ( member_a @ X7 @ ( states_a_b_c @ X3 ) )
         => ! [Xa2: a] :
              ( ( member_a @ Xa2 @ ( states_a_b_c @ X3 ) )
             => ( ( X7 != Xa2 )
               => ( ( lS_a_b_c @ X3 @ X7 )
                 != ( lS_a_b_c @ X3 @ Xa2 ) ) ) ) ) ) ).

% minimal.elims(2)
thf(fact_1015_minimal_Oelims_I3_J,axiom,
    ! [X3: fsm_a_b_c] :
      ( ~ ( minimal_a_b_c @ X3 )
     => ~ ! [X: a] :
            ( ( member_a @ X @ ( states_a_b_c @ X3 ) )
           => ! [Xa3: a] :
                ( ( member_a @ Xa3 @ ( states_a_b_c @ X3 ) )
               => ( ( X != Xa3 )
                 => ( ( lS_a_b_c @ X3 @ X )
                   != ( lS_a_b_c @ X3 @ Xa3 ) ) ) ) ) ) ).

% minimal.elims(3)
thf(fact_1016_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_Pr7472501486718762121tion_a,Q16: produc1359548802814378470tion_a,Q24: produc1359548802814378470tion_a,W2: list_P7785822056432494700tion_a,W: list_P7785822056432494700tion_a] :
      ( ( observ4093451317186617389tion_a @ M )
     => ( ( minima1614543103880104311tion_a @ M )
       => ( ( member5139186223151194895tion_a @ Q16 @ ( states8609567504773501230tion_a @ M ) )
         => ( ( member5139186223151194895tion_a @ Q24 @ ( states8609567504773501230tion_a @ M ) )
           => ( ( minima8288198102938997131tion_a @ M @ Q16 @ Q24 @ ( append7143236819997180545tion_a @ W2 @ W ) )
             => ( ( W != nil_Pr596483954593762796tion_a )
               => ( minima8288198102938997131tion_a @ M @ ( after_4666548563309070908tion_a @ M @ Q16 @ W2 ) @ ( after_4666548563309070908tion_a @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1017_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_a_6478515617308310433tion_a,Q16: a,Q24: a,W2: list_P7785822056432494700tion_a,W: list_P7785822056432494700tion_a] :
      ( ( observ671438039871229253tion_a @ M )
     => ( ( minima7556218584719635087tion_a @ M )
       => ( ( member_a @ Q16 @ ( states483080441059632198tion_a @ M ) )
         => ( ( member_a @ Q24 @ ( states483080441059632198tion_a @ M ) )
           => ( ( minima1077567848608395939tion_a @ M @ Q16 @ Q24 @ ( append7143236819997180545tion_a @ W2 @ W ) )
             => ( ( W != nil_Pr596483954593762796tion_a )
               => ( minima1077567848608395939tion_a @ M @ ( after_6104971424356839764tion_a @ M @ Q16 @ W2 ) @ ( after_6104971424356839764tion_a @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1018_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_c_1147223751206369699tion_a,Q16: c,Q24: c,W2: list_P7785822056432494700tion_a,W: list_P7785822056432494700tion_a] :
      ( ( observ351798691694324295tion_a @ M )
     => ( ( minima7236579236542730129tion_a @ M )
       => ( ( member_c @ Q16 @ ( states163441092882727240tion_a @ M ) )
         => ( ( member_c @ Q24 @ ( states163441092882727240tion_a @ M ) )
           => ( ( minima757928500431490981tion_a @ M @ Q16 @ Q24 @ ( append7143236819997180545tion_a @ W2 @ W ) )
             => ( ( W != nil_Pr596483954593762796tion_a )
               => ( minima757928500431490981tion_a @ M @ ( after_5785332076179934806tion_a @ M @ Q16 @ W2 ) @ ( after_5785332076179934806tion_a @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1019_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_Pr5936464569842867211tion_a,Q16: product_prod_b_c,Q24: product_prod_b_c,W2: list_P7785822056432494700tion_a,W: list_P7785822056432494700tion_a] :
      ( ( observ7990565526433231279tion_a @ M )
     => ( ( minima8088008849206328569tion_a @ M )
       => ( ( member7862447941013992593od_b_c @ Q16 @ ( states327732041617776560tion_a @ M ) )
         => ( ( member7862447941013992593od_b_c @ Q24 @ ( states327732041617776560tion_a @ M ) )
           => ( ( minima8693461369039603981tion_a @ M @ Q16 @ Q24 @ ( append7143236819997180545tion_a @ W2 @ W ) )
             => ( ( W != nil_Pr596483954593762796tion_a )
               => ( minima8693461369039603981tion_a @ M @ ( after_6106094911294320318tion_a @ M @ Q16 @ W2 ) @ ( after_6106094911294320318tion_a @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1020_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_b_8424555702684727970tion_a,Q16: b,Q24: b,W2: list_P7785822056432494700tion_a,W: list_P7785822056432494700tion_a] :
      ( ( observ511618365782776774tion_a @ M )
     => ( ( minima7396398910631182608tion_a @ M )
       => ( ( member_b @ Q16 @ ( states323260766971179719tion_a @ M ) )
         => ( ( member_b @ Q24 @ ( states323260766971179719tion_a @ M ) )
           => ( ( minima917748174519943460tion_a @ M @ Q16 @ Q24 @ ( append7143236819997180545tion_a @ W2 @ W ) )
             => ( ( W != nil_Pr596483954593762796tion_a )
               => ( minima917748174519943460tion_a @ M @ ( after_5945151750268387285tion_a @ M @ Q16 @ W2 ) @ ( after_5945151750268387285tion_a @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1021_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_Pr4084281153683398667_a_b_c,Q16: produc1359548802814378470tion_a,Q24: produc1359548802814378470tion_a,W2: list_P903359562653991662od_b_c,W: list_P903359562653991662od_b_c] :
      ( ( observ6621331549010720559_a_b_c @ M )
     => ( ( minima6718774871783817849_a_b_c @ M )
       => ( ( member5139186223151194895tion_a @ Q16 @ ( states8181870101050041648_a_b_c @ M ) )
         => ( ( member5139186223151194895tion_a @ Q24 @ ( states8181870101050041648_a_b_c @ M ) )
           => ( ( minima7324227391617093261_a_b_c @ M @ Q16 @ Q24 @ ( append2547753245680614915od_b_c @ W2 @ W ) )
             => ( ( W != nil_Product_prod_b_c )
               => ( minima7324227391617093261_a_b_c @ M @ ( after_4736860933871809598_a_b_c @ M @ Q16 @ W2 ) @ ( after_4736860933871809598_a_b_c @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1022_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_c_b_c,Q16: c,Q24: c,W2: list_P903359562653991662od_b_c,W: list_P903359562653991662od_b_c] :
      ( ( observable_c_b_c @ M )
     => ( ( minimal_c_b_c @ M )
       => ( ( member_c @ Q16 @ ( states_c_b_c @ M ) )
         => ( ( member_c @ Q24 @ ( states_c_b_c @ M ) )
           => ( ( minima2212601056752844455_c_b_c @ M @ Q16 @ Q24 @ ( append2547753245680614915od_b_c @ W2 @ W ) )
             => ( ( W != nil_Product_prod_b_c )
               => ( minima2212601056752844455_c_b_c @ M @ ( after_c_b_c @ M @ Q16 @ W2 ) @ ( after_c_b_c @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1023_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_Pr8946560376811747725_c_b_c,Q16: product_prod_b_c,Q24: product_prod_b_c,W2: list_P903359562653991662od_b_c,W: list_P903359562653991662od_b_c] :
      ( ( observ2355048066641855153_c_b_c @ M )
     => ( ( minima2655950506785042427_c_b_c @ M )
       => ( ( member7862447941013992593od_b_c @ Q16 @ ( states8981316748681014706_c_b_c @ M ) )
         => ( ( member7862447941013992593od_b_c @ Q24 @ ( states8981316748681014706_c_b_c @ M ) )
           => ( ( minima7220721411496132623_c_b_c @ M @ Q16 @ Q24 @ ( append2547753245680614915od_b_c @ W2 @ W ) )
             => ( ( W != nil_Product_prod_b_c )
               => ( minima7220721411496132623_c_b_c @ M @ ( after_2478316435353686720_c_b_c @ M @ Q16 @ W2 ) @ ( after_2478316435353686720_c_b_c @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1024_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_b_b_c,Q16: b,Q24: b,W2: list_P903359562653991662od_b_c,W: list_P903359562653991662od_b_c] :
      ( ( observable_b_b_c @ M )
     => ( ( minimal_b_b_c @ M )
       => ( ( member_b @ Q16 @ ( states_b_b_c @ M ) )
         => ( ( member_b @ Q24 @ ( states_b_b_c @ M ) )
           => ( ( minima5839754478419489574_b_b_c @ M @ Q16 @ Q24 @ ( append2547753245680614915od_b_c @ W2 @ W ) )
             => ( ( W != nil_Product_prod_b_c )
               => ( minima5839754478419489574_b_b_c @ M @ ( after_b_b_c @ M @ Q16 @ W2 ) @ ( after_b_b_c @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1025_minimally__distinguishes__after__append,axiom,
    ! [M: fsm_a_b_c,Q16: a,Q24: a,W2: list_P903359562653991662od_b_c,W: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( minimal_a_b_c @ M )
       => ( ( member_a @ Q16 @ ( states_a_b_c @ M ) )
         => ( ( member_a @ Q24 @ ( states_a_b_c @ M ) )
           => ( ( minima243535863231358885_a_b_c @ M @ Q16 @ Q24 @ ( append2547753245680614915od_b_c @ W2 @ W ) )
             => ( ( W != nil_Product_prod_b_c )
               => ( minima243535863231358885_a_b_c @ M @ ( after_a_b_c @ M @ Q16 @ W2 ) @ ( after_a_b_c @ M @ Q24 @ W2 ) @ W ) ) ) ) ) ) ) ).

% minimally_distinguishes_after_append
thf(fact_1026_acyclic__paths__up__to__length_H_Oelims,axiom,
    ! [X3: list_P794930430897013583tion_a,Xa: option_a,Xb: option_a > set_Pr165121870232099142tion_a,Xc: set_option_a,Xd: nat,Y: set_li2956804489699321647tion_a] :
      ( ( ( acycli3394033286235393522tion_a @ X3 @ Xa @ Xb @ Xc @ Xd )
        = Y )
     => ( ( ( Xd = zero_zero_nat )
         => ( Y
           != ( insert4060808858060226847tion_a @ X3 @ bot_bo776784062546337179tion_a ) ) )
       => ~ ! [K3: nat] :
              ( ( Xd
                = ( suc @ K3 ) )
             => ( Y
               != ( insert4060808858060226847tion_a @ X3
                  @ ( comple1007154728799465372tion_a
                    @ ( image_1495590055081105358tion_a
                      @ ( produc8039891716053847428tion_a
                        @ ^ [X5: product_prod_b_c] :
                            ( produc3553680268006689283tion_a
                            @ ^ [Y3: option_a,Q6: option_a] : ( acycli3394033286235393522tion_a @ ( append8060689111879548644tion_a @ X3 @ ( cons_P9024763710870818431tion_a @ ( produc1410100667027582777tion_a @ Xa @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ nil_Pr6423282846949386959tion_a ) ) @ Q6 @ Xb @ ( insert_option_a @ Q6 @ Xc ) @ K3 ) ) )
                      @ ( filter8754926412232404503tion_a
                        @ ( produc6118554791394114925on_a_o
                          @ ^ [X5: product_prod_b_c] :
                              ( produc7248784972643495020on_a_o
                              @ ^ [Y3: option_a,Q6: option_a] :
                                  ~ ( member_option_a @ Q6 @ Xc ) ) )
                        @ ( Xb @ Xa ) ) ) ) ) ) ) ) ) ).

% acyclic_paths_up_to_length'.elims
thf(fact_1027_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_c_b_c,I2: fsm_c_b_c,QM: c,QI: c,Io: list_P903359562653991662od_b_c] :
      ( ( observable_c_b_c @ M )
     => ( ( observable_c_b_c @ I2 )
       => ( ( member_c @ QM @ ( states_c_b_c @ M ) )
         => ( ( member_c @ QI @ ( states_c_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1028_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_c_b_c,I2: fsm_b_b_c,QM: c,QI: b,Io: list_P903359562653991662od_b_c] :
      ( ( observable_c_b_c @ M )
     => ( ( observable_b_b_c @ I2 )
       => ( ( member_c @ QM @ ( states_c_b_c @ M ) )
         => ( ( member_b @ QI @ ( states_b_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1029_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_b_b_c,I2: fsm_c_b_c,QM: b,QI: c,Io: list_P903359562653991662od_b_c] :
      ( ( observable_b_b_c @ M )
     => ( ( observable_c_b_c @ I2 )
       => ( ( member_b @ QM @ ( states_b_b_c @ M ) )
         => ( ( member_c @ QI @ ( states_c_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1030_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_b_b_c,I2: fsm_b_b_c,QM: b,QI: b,Io: list_P903359562653991662od_b_c] :
      ( ( observable_b_b_c @ M )
     => ( ( observable_b_b_c @ I2 )
       => ( ( member_b @ QM @ ( states_b_b_c @ M ) )
         => ( ( member_b @ QI @ ( states_b_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1031_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_c_b_c,I2: fsm_a_b_c,QM: c,QI: a,Io: list_P903359562653991662od_b_c] :
      ( ( observable_c_b_c @ M )
     => ( ( observable_a_b_c @ I2 )
       => ( ( member_c @ QM @ ( states_c_b_c @ M ) )
         => ( ( member_a @ QI @ ( states_a_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1032_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_b_b_c,I2: fsm_a_b_c,QM: b,QI: a,Io: list_P903359562653991662od_b_c] :
      ( ( observable_b_b_c @ M )
     => ( ( observable_a_b_c @ I2 )
       => ( ( member_b @ QM @ ( states_b_b_c @ M ) )
         => ( ( member_a @ QI @ ( states_a_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_b_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1033_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_a_b_c,I2: fsm_c_b_c,QM: a,QI: c,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( observable_c_b_c @ I2 )
       => ( ( member_a @ QM @ ( states_a_b_c @ M ) )
         => ( ( member_c @ QI @ ( states_c_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_c_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1034_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_a_b_c,I2: fsm_b_b_c,QM: a,QI: b,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( observable_b_b_c @ I2 )
       => ( ( member_a @ QM @ ( states_a_b_c @ M ) )
         => ( ( member_b @ QI @ ( states_b_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_b_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1035_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_a_b_c,I2: fsm_a_b_c,QM: a,QI: a,Io: list_P903359562653991662od_b_c] :
      ( ( observable_a_b_c @ M )
     => ( ( observable_a_b_c @ I2 )
       => ( ( member_a @ QM @ ( states_a_b_c @ M ) )
         => ( ( member_a @ QI @ ( states_a_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_a_b_c @ I2 @ QI ) @ ( lS_a_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1036_minimal__failure__prefix__ob,axiom,
    ! [M: fsm_c_b_c,I2: fsm_Pr8946560376811747725_c_b_c,QM: c,QI: product_prod_b_c,Io: list_P903359562653991662od_b_c] :
      ( ( observable_c_b_c @ M )
     => ( ( observ2355048066641855153_c_b_c @ I2 )
       => ( ( member_c @ QM @ ( states_c_b_c @ M ) )
         => ( ( member7862447941013992593od_b_c @ QI @ ( states8981316748681014706_c_b_c @ I2 ) )
           => ( ( member6330420149250801815od_b_c @ Io @ ( minus_5375846548645262261od_b_c @ ( lS_Pro4505222411400483149_c_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) )
             => ~ ! [Io3: list_P903359562653991662od_b_c,Xy2: product_prod_b_c] :
                    ( ? [Io4: list_P903359562653991662od_b_c] :
                        ( Io
                        = ( append2547753245680614915od_b_c @ Io3 @ ( append2547753245680614915od_b_c @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) @ Io4 ) ) )
                   => ( ( member6330420149250801815od_b_c @ Io3 @ ( inf_in4978071631833541052od_b_c @ ( lS_Pro4505222411400483149_c_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) )
                     => ~ ( member6330420149250801815od_b_c @ ( append2547753245680614915od_b_c @ Io3 @ ( cons_P4529483553340347422od_b_c @ Xy2 @ nil_Product_prod_b_c ) ) @ ( minus_5375846548645262261od_b_c @ ( lS_Pro4505222411400483149_c_b_c @ I2 @ QI ) @ ( lS_c_b_c @ M @ QM ) ) ) ) ) ) ) ) ) ) ).

% minimal_failure_prefix_ob
thf(fact_1037_listset_Osimps_I1_J,axiom,
    ( ( listse5143494397118923211tion_a @ nil_se4662696840916569420tion_a )
    = ( insert2781922097456180796tion_a @ nil_Pr596483954593762796tion_a @ bot_bo8218494557939110584tion_a ) ) ).

% listset.simps(1)
thf(fact_1038_listset_Osimps_I1_J,axiom,
    ( ( listse5707276433534017357od_b_c @ nil_se6658356940551653326od_b_c )
    = ( insert6227932334100060350od_b_c @ nil_Product_prod_b_c @ bot_bo4166481423041325370od_b_c ) ) ).

% listset.simps(1)
thf(fact_1039_listset_Osimps_I1_J,axiom,
    ( ( listset_b @ nil_set_b )
    = ( insert_list_b @ nil_b @ bot_bot_set_list_b ) ) ).

% listset.simps(1)
thf(fact_1040_listset_Osimps_I1_J,axiom,
    ( ( listset_c @ nil_set_c )
    = ( insert_list_c @ nil_c @ bot_bot_set_list_c ) ) ).

% listset.simps(1)
thf(fact_1041_listset_Osimps_I1_J,axiom,
    ( ( listset_a @ nil_set_a )
    = ( insert_list_a @ nil_a @ bot_bot_set_list_a ) ) ).

% listset.simps(1)
thf(fact_1042_pair__imageI,axiom,
    ! [A: b,B: c,A4: set_Product_prod_b_c,F: b > c > a] :
      ( ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ A @ B ) @ A4 )
     => ( member_a @ ( F @ A @ B ) @ ( image_7762865866877615259_b_c_a @ ( produc8837194378803474129_b_c_a @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1043_pair__imageI,axiom,
    ! [A: b,B: c,A4: set_Product_prod_b_c,F: b > c > c] :
      ( ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ A @ B ) @ A4 )
     => ( member_c @ ( F @ A @ B ) @ ( image_7762865866877615261_b_c_c @ ( produc8837194378803474131_b_c_c @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1044_pair__imageI,axiom,
    ! [A: b,B: c,A4: set_Product_prod_b_c,F: b > c > b] :
      ( ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ A @ B ) @ A4 )
     => ( member_b @ ( F @ A @ B ) @ ( image_7762865866877615260_b_c_b @ ( produc8837194378803474130_b_c_b @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1045_pair__imageI,axiom,
    ! [A: b,B: c,A4: set_Product_prod_b_c,F: b > c > product_prod_b_c] :
      ( ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ A @ B ) @ A4 )
     => ( member7862447941013992593od_b_c @ ( F @ A @ B ) @ ( image_3117045938558108421od_b_c @ ( produc281880053716946747od_b_c @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1046_pair__imageI,axiom,
    ! [A: option_a,B: option_a,A4: set_Pr7585778909603769095tion_a,F: option_a > option_a > a] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ A @ B ) @ A4 )
     => ( member_a @ ( F @ A @ B ) @ ( image_4579756942765042844on_a_a @ ( produc3077986099366611410on_a_a @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1047_pair__imageI,axiom,
    ! [A: option_a,B: option_a,A4: set_Pr7585778909603769095tion_a,F: option_a > option_a > c] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ A @ B ) @ A4 )
     => ( member_c @ ( F @ A @ B ) @ ( image_4579756942765042846on_a_c @ ( produc3077986099366611412on_a_c @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1048_pair__imageI,axiom,
    ! [A: option_a,B: option_a,A4: set_Pr7585778909603769095tion_a,F: option_a > option_a > b] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ A @ B ) @ A4 )
     => ( member_b @ ( F @ A @ B ) @ ( image_4579756942765042845on_a_b @ ( produc3077986099366611411on_a_b @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1049_pair__imageI,axiom,
    ! [A: option_a,B: option_a,A4: set_Pr7585778909603769095tion_a,F: option_a > option_a > product_prod_b_c] :
      ( ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ A @ B ) @ A4 )
     => ( member7862447941013992593od_b_c @ ( F @ A @ B ) @ ( image_733707546518145542od_b_c @ ( produc7279435155265995068od_b_c @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1050_pair__imageI,axiom,
    ! [A: product_prod_b_c,B: produc3509355604313844263tion_a,A4: set_Pr165121870232099142tion_a,F: product_prod_b_c > produc3509355604313844263tion_a > a] :
      ( ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ A @ B ) @ A4 )
     => ( member_a @ ( F @ A @ B ) @ ( image_661556846710347421on_a_a @ ( produc9166806139232348755on_a_a @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1051_pair__imageI,axiom,
    ! [A: product_prod_b_c,B: produc3509355604313844263tion_a,A4: set_Pr165121870232099142tion_a,F: product_prod_b_c > produc3509355604313844263tion_a > c] :
      ( ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ A @ B ) @ A4 )
     => ( member_c @ ( F @ A @ B ) @ ( image_661556846710347423on_a_c @ ( produc9166806139232348757on_a_c @ F ) @ A4 ) ) ) ).

% pair_imageI
thf(fact_1052_imageE,axiom,
    ! [B: a,F: a > a,A4: set_a] :
      ( ( member_a @ B @ ( image_a_a @ F @ A4 ) )
     => ~ ! [X: a] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_a @ X @ A4 ) ) ) ).

% imageE
thf(fact_1053_imageE,axiom,
    ! [B: a,F: c > a,A4: set_c] :
      ( ( member_a @ B @ ( image_c_a @ F @ A4 ) )
     => ~ ! [X: c] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_c @ X @ A4 ) ) ) ).

% imageE
thf(fact_1054_imageE,axiom,
    ! [B: a,F: b > a,A4: set_b] :
      ( ( member_a @ B @ ( image_b_a @ F @ A4 ) )
     => ~ ! [X: b] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_b @ X @ A4 ) ) ) ).

% imageE
thf(fact_1055_imageE,axiom,
    ! [B: c,F: a > c,A4: set_a] :
      ( ( member_c @ B @ ( image_a_c @ F @ A4 ) )
     => ~ ! [X: a] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_a @ X @ A4 ) ) ) ).

% imageE
thf(fact_1056_imageE,axiom,
    ! [B: c,F: c > c,A4: set_c] :
      ( ( member_c @ B @ ( image_c_c @ F @ A4 ) )
     => ~ ! [X: c] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_c @ X @ A4 ) ) ) ).

% imageE
thf(fact_1057_imageE,axiom,
    ! [B: c,F: b > c,A4: set_b] :
      ( ( member_c @ B @ ( image_b_c @ F @ A4 ) )
     => ~ ! [X: b] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_b @ X @ A4 ) ) ) ).

% imageE
thf(fact_1058_imageE,axiom,
    ! [B: b,F: a > b,A4: set_a] :
      ( ( member_b @ B @ ( image_a_b @ F @ A4 ) )
     => ~ ! [X: a] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_a @ X @ A4 ) ) ) ).

% imageE
thf(fact_1059_imageE,axiom,
    ! [B: b,F: c > b,A4: set_c] :
      ( ( member_b @ B @ ( image_c_b @ F @ A4 ) )
     => ~ ! [X: c] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_c @ X @ A4 ) ) ) ).

% imageE
thf(fact_1060_imageE,axiom,
    ! [B: b,F: b > b,A4: set_b] :
      ( ( member_b @ B @ ( image_b_b @ F @ A4 ) )
     => ~ ! [X: b] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member_b @ X @ A4 ) ) ) ).

% imageE
thf(fact_1061_imageE,axiom,
    ! [B: a,F: product_prod_b_c > a,A4: set_Product_prod_b_c] :
      ( ( member_a @ B @ ( image_7762865866877615259_b_c_a @ F @ A4 ) )
     => ~ ! [X: product_prod_b_c] :
            ( ( B
              = ( F @ X ) )
           => ~ ( member7862447941013992593od_b_c @ X @ A4 ) ) ) ).

% imageE
thf(fact_1062_Int__def,axiom,
    ( inf_in4293130732126176052tion_a
    = ( ^ [A6: set_Pr165121870232099142tion_a,B6: set_Pr165121870232099142tion_a] :
          ( collec5181485912584638289tion_a
          @ ^ [X5: produc1359548802814378470tion_a] :
              ( ( member5139186223151194895tion_a @ X5 @ A6 )
              & ( member5139186223151194895tion_a @ X5 @ B6 ) ) ) ) ) ).

% Int_def
thf(fact_1063_Int__def,axiom,
    ( inf_inf_set_a
    = ( ^ [A6: set_a,B6: set_a] :
          ( collect_a
          @ ^ [X5: a] :
              ( ( member_a @ X5 @ A6 )
              & ( member_a @ X5 @ B6 ) ) ) ) ) ).

% Int_def
thf(fact_1064_Int__def,axiom,
    ( inf_inf_set_c
    = ( ^ [A6: set_c,B6: set_c] :
          ( collect_c
          @ ^ [X5: c] :
              ( ( member_c @ X5 @ A6 )
              & ( member_c @ X5 @ B6 ) ) ) ) ) ).

% Int_def
thf(fact_1065_Int__def,axiom,
    ( inf_in8411426679332095414od_b_c
    = ( ^ [A6: set_Product_prod_b_c,B6: set_Product_prod_b_c] :
          ( collec548942224018234067od_b_c
          @ ^ [X5: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ X5 @ A6 )
              & ( member7862447941013992593od_b_c @ X5 @ B6 ) ) ) ) ) ).

% Int_def
thf(fact_1066_Int__def,axiom,
    ( inf_inf_set_b
    = ( ^ [A6: set_b,B6: set_b] :
          ( collect_b
          @ ^ [X5: b] :
              ( ( member_b @ X5 @ A6 )
              & ( member_b @ X5 @ B6 ) ) ) ) ) ).

% Int_def
thf(fact_1067_Int__Collect,axiom,
    ! [X3: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a,P: produc1359548802814378470tion_a > $o] :
      ( ( member5139186223151194895tion_a @ X3 @ ( inf_in4293130732126176052tion_a @ A4 @ ( collec5181485912584638289tion_a @ P ) ) )
      = ( ( member5139186223151194895tion_a @ X3 @ A4 )
        & ( P @ X3 ) ) ) ).

% Int_Collect
thf(fact_1068_Int__Collect,axiom,
    ! [X3: a,A4: set_a,P: a > $o] :
      ( ( member_a @ X3 @ ( inf_inf_set_a @ A4 @ ( collect_a @ P ) ) )
      = ( ( member_a @ X3 @ A4 )
        & ( P @ X3 ) ) ) ).

% Int_Collect
thf(fact_1069_Int__Collect,axiom,
    ! [X3: c,A4: set_c,P: c > $o] :
      ( ( member_c @ X3 @ ( inf_inf_set_c @ A4 @ ( collect_c @ P ) ) )
      = ( ( member_c @ X3 @ A4 )
        & ( P @ X3 ) ) ) ).

% Int_Collect
thf(fact_1070_Int__Collect,axiom,
    ! [X3: product_prod_b_c,A4: set_Product_prod_b_c,P: product_prod_b_c > $o] :
      ( ( member7862447941013992593od_b_c @ X3 @ ( inf_in8411426679332095414od_b_c @ A4 @ ( collec548942224018234067od_b_c @ P ) ) )
      = ( ( member7862447941013992593od_b_c @ X3 @ A4 )
        & ( P @ X3 ) ) ) ).

% Int_Collect
thf(fact_1071_Int__Collect,axiom,
    ! [X3: b,A4: set_b,P: b > $o] :
      ( ( member_b @ X3 @ ( inf_inf_set_b @ A4 @ ( collect_b @ P ) ) )
      = ( ( member_b @ X3 @ A4 )
        & ( P @ X3 ) ) ) ).

% Int_Collect
thf(fact_1072_Compr__image__eq,axiom,
    ! [F: a > a,A4: set_a,P: a > $o] :
      ( ( collect_a
        @ ^ [X5: a] :
            ( ( member_a @ X5 @ ( image_a_a @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_a_a @ F
        @ ( collect_a
          @ ^ [X5: a] :
              ( ( member_a @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1073_Compr__image__eq,axiom,
    ! [F: c > a,A4: set_c,P: a > $o] :
      ( ( collect_a
        @ ^ [X5: a] :
            ( ( member_a @ X5 @ ( image_c_a @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_c_a @ F
        @ ( collect_c
          @ ^ [X5: c] :
              ( ( member_c @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1074_Compr__image__eq,axiom,
    ! [F: b > a,A4: set_b,P: a > $o] :
      ( ( collect_a
        @ ^ [X5: a] :
            ( ( member_a @ X5 @ ( image_b_a @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_b_a @ F
        @ ( collect_b
          @ ^ [X5: b] :
              ( ( member_b @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1075_Compr__image__eq,axiom,
    ! [F: a > c,A4: set_a,P: c > $o] :
      ( ( collect_c
        @ ^ [X5: c] :
            ( ( member_c @ X5 @ ( image_a_c @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_a_c @ F
        @ ( collect_a
          @ ^ [X5: a] :
              ( ( member_a @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1076_Compr__image__eq,axiom,
    ! [F: c > c,A4: set_c,P: c > $o] :
      ( ( collect_c
        @ ^ [X5: c] :
            ( ( member_c @ X5 @ ( image_c_c @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_c_c @ F
        @ ( collect_c
          @ ^ [X5: c] :
              ( ( member_c @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1077_Compr__image__eq,axiom,
    ! [F: b > c,A4: set_b,P: c > $o] :
      ( ( collect_c
        @ ^ [X5: c] :
            ( ( member_c @ X5 @ ( image_b_c @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_b_c @ F
        @ ( collect_b
          @ ^ [X5: b] :
              ( ( member_b @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1078_Compr__image__eq,axiom,
    ! [F: a > b,A4: set_a,P: b > $o] :
      ( ( collect_b
        @ ^ [X5: b] :
            ( ( member_b @ X5 @ ( image_a_b @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_a_b @ F
        @ ( collect_a
          @ ^ [X5: a] :
              ( ( member_a @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1079_Compr__image__eq,axiom,
    ! [F: c > b,A4: set_c,P: b > $o] :
      ( ( collect_b
        @ ^ [X5: b] :
            ( ( member_b @ X5 @ ( image_c_b @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_c_b @ F
        @ ( collect_c
          @ ^ [X5: c] :
              ( ( member_c @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1080_Compr__image__eq,axiom,
    ! [F: b > b,A4: set_b,P: b > $o] :
      ( ( collect_b
        @ ^ [X5: b] :
            ( ( member_b @ X5 @ ( image_b_b @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_b_b @ F
        @ ( collect_b
          @ ^ [X5: b] :
              ( ( member_b @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1081_Compr__image__eq,axiom,
    ! [F: product_prod_b_c > a,A4: set_Product_prod_b_c,P: a > $o] :
      ( ( collect_a
        @ ^ [X5: a] :
            ( ( member_a @ X5 @ ( image_7762865866877615259_b_c_a @ F @ A4 ) )
            & ( P @ X5 ) ) )
      = ( image_7762865866877615259_b_c_a @ F
        @ ( collec548942224018234067od_b_c
          @ ^ [X5: product_prod_b_c] :
              ( ( member7862447941013992593od_b_c @ X5 @ A4 )
              & ( P @ ( F @ X5 ) ) ) ) ) ) ).

% Compr_image_eq
thf(fact_1082_find__remove__2__None__iff,axiom,
    ! [P: b > b > $o,Xs: list_b,Ys2: list_b] :
      ( ( ( find_remove_2_b_b @ P @ Xs @ Ys2 )
        = none_P3223117731893015990list_b )
      = ( ~ ? [X5: b,Y3: b] :
              ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
              & ( member_b @ Y3 @ ( set_b2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1083_find__remove__2__None__iff,axiom,
    ! [P: b > c > $o,Xs: list_b,Ys2: list_c] :
      ( ( ( find_remove_2_b_c @ P @ Xs @ Ys2 )
        = none_P7174009367511604469list_b )
      = ( ~ ? [X5: b,Y3: c] :
              ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
              & ( member_c @ Y3 @ ( set_c2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1084_find__remove__2__None__iff,axiom,
    ! [P: b > a > $o,Xs: list_b,Ys2: list_a] :
      ( ( ( find_remove_2_b_a @ P @ Xs @ Ys2 )
        = none_P8495598133129203319list_b )
      = ( ~ ? [X5: b,Y3: a] :
              ( ( member_b @ X5 @ ( set_b2 @ Xs ) )
              & ( member_a @ Y3 @ ( set_a2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1085_find__remove__2__None__iff,axiom,
    ! [P: c > b > $o,Xs: list_c,Ys2: list_b] :
      ( ( ( find_remove_2_c_b @ P @ Xs @ Ys2 )
        = none_P4408407356403803126list_c )
      = ( ~ ? [X5: c,Y3: b] :
              ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
              & ( member_b @ Y3 @ ( set_b2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1086_find__remove__2__None__iff,axiom,
    ! [P: c > c > $o,Xs: list_c,Ys2: list_c] :
      ( ( ( find_remove_2_c_c @ P @ Xs @ Ys2 )
        = none_P8359298992022391605list_c )
      = ( ~ ? [X5: c,Y3: c] :
              ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
              & ( member_c @ Y3 @ ( set_c2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1087_find__remove__2__None__iff,axiom,
    ! [P: c > a > $o,Xs: list_c,Ys2: list_a] :
      ( ( ( find_remove_2_c_a @ P @ Xs @ Ys2 )
        = none_P457515720785214647list_c )
      = ( ~ ? [X5: c,Y3: a] :
              ( ( member_c @ X5 @ ( set_c2 @ Xs ) )
              & ( member_a @ Y3 @ ( set_a2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1088_find__remove__2__None__iff,axiom,
    ! [P: a > b > $o,Xs: list_a,Ys2: list_b] :
      ( ( ( find_remove_2_a_b @ P @ Xs @ Ys2 )
        = none_P2037828107382228854list_a )
      = ( ~ ? [X5: a,Y3: b] :
              ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
              & ( member_b @ Y3 @ ( set_b2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1089_find__remove__2__None__iff,axiom,
    ! [P: a > c > $o,Xs: list_a,Ys2: list_c] :
      ( ( ( find_remove_2_a_c @ P @ Xs @ Ys2 )
        = none_P5988719743000817333list_a )
      = ( ~ ? [X5: a,Y3: c] :
              ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
              & ( member_c @ Y3 @ ( set_c2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1090_find__remove__2__None__iff,axiom,
    ! [P: a > a > $o,Xs: list_a,Ys2: list_a] :
      ( ( ( find_remove_2_a_a @ P @ Xs @ Ys2 )
        = none_P7310308508618416183list_a )
      = ( ~ ? [X5: a,Y3: a] :
              ( ( member_a @ X5 @ ( set_a2 @ Xs ) )
              & ( member_a @ Y3 @ ( set_a2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1091_find__remove__2__None__iff,axiom,
    ! [P: product_prod_b_c > b > $o,Xs: list_P903359562653991662od_b_c,Ys2: list_b] :
      ( ( ( find_r3958742308954804126_b_c_b @ P @ Xs @ Ys2 )
        = none_P4246584108280835830od_b_c )
      = ( ~ ? [X5: product_prod_b_c,Y3: b] :
              ( ( member7862447941013992593od_b_c @ X5 @ ( set_Product_prod_b_c2 @ Xs ) )
              & ( member_b @ Y3 @ ( set_b2 @ Ys2 ) )
              & ( P @ X5 @ Y3 ) ) ) ) ).

% find_remove_2_None_iff
thf(fact_1092_acyclic__paths__up__to__length_H_Osimps_I2_J,axiom,
    ! [Prev2: list_P794930430897013583tion_a,Q: option_a,HF: option_a > set_Pr165121870232099142tion_a,VisitedStates: set_option_a,K: nat] :
      ( ( acycli3394033286235393522tion_a @ Prev2 @ Q @ HF @ VisitedStates @ ( suc @ K ) )
      = ( insert4060808858060226847tion_a @ Prev2
        @ ( comple1007154728799465372tion_a
          @ ( image_1495590055081105358tion_a
            @ ( produc8039891716053847428tion_a
              @ ^ [X5: product_prod_b_c] :
                  ( produc3553680268006689283tion_a
                  @ ^ [Y3: option_a,Q6: option_a] : ( acycli3394033286235393522tion_a @ ( append8060689111879548644tion_a @ Prev2 @ ( cons_P9024763710870818431tion_a @ ( produc1410100667027582777tion_a @ Q @ ( produc7403377568244983126tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ nil_Pr6423282846949386959tion_a ) ) @ Q6 @ HF @ ( insert_option_a @ Q6 @ VisitedStates ) @ K ) ) )
            @ ( filter8754926412232404503tion_a
              @ ( produc6118554791394114925on_a_o
                @ ^ [X5: product_prod_b_c] :
                    ( produc7248784972643495020on_a_o
                    @ ^ [Y3: option_a,Q6: option_a] :
                        ~ ( member_option_a @ Q6 @ VisitedStates ) ) )
              @ ( HF @ Q ) ) ) ) ) ) ).

% acyclic_paths_up_to_length'.simps(2)
thf(fact_1093_paths__for__input_H_Oelims,axiom,
    ! [X3: c > set_Pr1802334677239424816od_b_c,Xa: list_b,Xb: c,Xc: list_P4431940218174719357od_b_c,Y: set_li7053753227538352605od_b_c] :
      ( ( ( paths_8245721347238958939_c_b_b @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_b )
         => ( Y
           != ( insert2894022425540311885od_b_c @ Xc @ bot_bo2907369408128696905od_b_c ) ) )
       => ~ ! [X: b,Xs2: list_b] :
              ( ( Xa
                = ( cons_b @ X @ Xs2 ) )
             => ( Y
               != ( comple8164335392045317578od_b_c
                  @ ( image_7483205033205537682od_b_c
                    @ ( produc6195930954516281800od_b_c
                      @ ^ [X6: b] :
                          ( produc2311328843100316464od_b_c
                          @ ^ [Y4: b,Q6: c] : ( paths_8245721347238958939_c_b_b @ X3 @ Xs2 @ Q6 @ ( append6535234395748997138od_b_c @ Xc @ ( cons_P2087234775940794413od_b_c @ ( produc7661255859823510375od_b_c @ Xb @ ( produc6228321504580015296od_b_c @ X @ ( product_Pair_b_c @ Y4 @ Q6 ) ) ) @ nil_Pr3993845549027728509od_b_c ) ) ) ) )
                    @ ( filter6407472333588070657od_b_c
                      @ ( produc8624300129738135427_b_c_o
                        @ ^ [X6: b] :
                            ( produc1873627588981547243_b_c_o
                            @ ^ [Y4: b,Q6: c] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1094_paths__for__input_H_Oelims,axiom,
    ! [X3: c > set_Pr466284057286730479od_b_c,Xa: list_c,Xb: c,Xc: list_P3846607621165011388od_b_c,Y: set_li4044971772871157404od_b_c] :
      ( ( ( paths_5458265765266282906_c_c_b @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_c )
         => ( Y
           != ( insert2308689828530603916od_b_c @ Xc @ bot_bo9121959990316277512od_b_c ) ) )
       => ~ ! [X: c,Xs2: list_c] :
              ( ( Xa
                = ( cons_c @ X @ Xs2 ) )
             => ( Y
               != ( comple5155553937378122377od_b_c
                  @ ( image_5008845426011350866od_b_c
                    @ ( produc3721571347322094984od_b_c
                      @ ^ [X6: c] :
                          ( produc8525919425287897071od_b_c
                          @ ^ [Y4: b,Q6: c] : ( paths_5458265765266282906_c_c_b @ X3 @ Xs2 @ Q6 @ ( append5199183775796302801od_b_c @ Xc @ ( cons_P751184155988100076od_b_c @ ( produc7021815559491694246od_b_c @ Xb @ ( produc5588881204248199167od_b_c @ X @ ( product_Pair_b_c @ Y4 @ Q6 ) ) ) @ nil_Pr2657794929075034172od_b_c ) ) ) ) )
                    @ ( filter5768032033256254528od_b_c
                      @ ( produc6507872071747660420_b_c_o
                        @ ^ [X6: c] :
                            ( produc1873627588981547243_b_c_o
                            @ ^ [Y4: b,Q6: c] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1095_paths__for__input_H_Oelims,axiom,
    ! [X3: c > set_Pr3138385297192119153od_b_c,Xa: list_a,Xb: c,Xc: list_P5017272815184427326od_b_c,Y: set_li839162645350771998od_b_c] :
      ( ( ( paths_1809804892356859164_c_a_b @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_a )
         => ( Y
           != ( insert3479355022550019854od_b_c @ Xc @ bot_bo5916150862795892106od_b_c ) ) )
       => ~ ! [X: a,Xs2: list_a] :
              ( ( Xa
                = ( cons_a @ X @ Xs2 ) )
             => ( Y
               != ( comple1949744809857736971od_b_c
                  @ ( image_734192603544948690od_b_c
                    @ ( produc8670290561710468616od_b_c
                      @ ^ [X6: a] :
                          ( produc5320110297767511665od_b_c
                          @ ^ [Y4: b,Q6: c] : ( paths_1809804892356859164_c_a_b @ X3 @ Xs2 @ Q6 @ ( append7871285015701691475od_b_c @ Xc @ ( cons_P3423285395893488750od_b_c @ ( produc8300696160155326504od_b_c @ Xb @ ( produc6867761804911831425od_b_c @ X @ ( product_Pair_b_c @ Y4 @ Q6 ) ) ) @ nil_Pr5329896168980422846od_b_c ) ) ) ) )
                    @ ( filter7046912633919886786od_b_c
                      @ ( produc1517356150873834626_b_c_o
                        @ ^ [X6: a] :
                            ( produc1873627588981547243_b_c_o
                            @ ^ [Y4: b,Q6: c] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1096_paths__for__input_H_Oelims,axiom,
    ! [X3: c > set_Pr794624490088963975od_b_c,Xa: list_P903359562653991662od_b_c,Xb: c,Xc: list_P5750542147746484308od_b_c,Y: set_li4056004263698848820od_b_c] :
      ( ( ( paths_1255429502677761074_b_c_b @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_Product_prod_b_c )
         => ( Y
           != ( insert7969419889936365092od_b_c @ Xc @ bot_bo7409403289895635104od_b_c ) ) )
       => ~ ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
              ( ( Xa
                = ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) )
             => ( Y
               != ( comple8646531781231401761od_b_c
                  @ ( image_2368855703703477586od_b_c
                    @ ( produc3698069921310824072od_b_c
                      @ ^ [X6: product_prod_b_c] :
                          ( produc1272705748417981063od_b_c
                          @ ^ [Y4: b,Q6: c] : ( paths_1255429502677761074_b_c_b @ X3 @ Xs2 @ Q6 @ ( append4552370346615250537od_b_c @ Xc @ ( cons_P696389382822869892od_b_c @ ( produc821521780996605246od_b_c @ Xb @ ( produc6366901981060558487od_b_c @ X @ ( product_Pair_b_c @ Y4 @ Q6 ) ) ) @ nil_Pr1579704168919171028od_b_c ) ) ) ) )
                    @ ( filter2220054948923168984od_b_c
                      @ ( produc9042625444911045100_b_c_o
                        @ ^ [X6: product_prod_b_c] :
                            ( produc1873627588981547243_b_c_o
                            @ ^ [Y4: b,Q6: c] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1097_paths__for__input_H_Oelims,axiom,
    ! [X3: option_a > set_Pr4096074933737766383tion_a,Xa: list_b,Xb: option_a,Xc: list_P2019770765010284920tion_a,Y: set_li843069166926712280tion_a] :
      ( ( ( paths_335666669147807076tion_a @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_b )
         => ( Y
           != ( insert6157376079594209096tion_a @ Xc @ bot_bo7137716345744724036tion_a ) ) )
       => ~ ! [X: b,Xs2: list_b] :
              ( ( Xa
                = ( cons_b @ X @ Xs2 ) )
             => ( Y
               != ( comple3939298411241327429tion_a
                  @ ( image_2869324143626669966tion_a
                    @ ( produc1584722505975425604tion_a
                      @ ^ [X6: b] :
                          ( produc7155304742515500204tion_a
                          @ ^ [Y4: option_a,Q6: option_a] : ( paths_335666669147807076tion_a @ X3 @ Xs2 @ Q6 @ ( append71941514131468685tion_a @ Xc @ ( cons_P500832324085044264tion_a @ ( produc4806779217739212386tion_a @ Xb @ ( produc915089235764144255tion_a @ X @ ( produc9011544418120257559tion_a @ Y4 @ Q6 ) ) ) @ nil_Pr4373965250523611256tion_a ) ) ) ) )
                    @ ( filter5285414574626812736tion_a
                      @ ( produc9184620452972502532on_a_o
                        @ ^ [X6: b] :
                            ( produc7248784972643495020on_a_o
                            @ ^ [Y4: option_a,Q6: option_a] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1098_paths__for__input_H_Oelims,axiom,
    ! [X3: option_a > set_Pr2152847514592699566tion_a,Xa: list_c,Xb: option_a,Xc: list_P3314507606740035767tion_a,Y: set_li6157365129634928023tion_a] :
      ( ( ( paths_6473282464012588323tion_a @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_c )
         => ( Y
           != ( insert7452112921323959943tion_a @ Xc @ bot_bo3228640271598163971tion_a ) ) )
       => ~ ! [X: c,Xs2: list_c] :
              ( ( Xa
                = ( cons_c @ X @ Xs2 ) )
             => ( Y
               != ( comple30222337094767364tion_a
                  @ ( image_3088794743313275598tion_a
                    @ ( produc1804193105662031236tion_a
                      @ ^ [X6: c] :
                          ( produc3246228668368940139tion_a
                          @ ^ [Y4: option_a,Q6: option_a] : ( paths_6473282464012588323tion_a @ X3 @ Xs2 @ Q6 @ ( append7352086131841177676tion_a @ Xc @ ( cons_P7780976941794753255tion_a @ ( produc8202229511663107233tion_a @ Xb @ ( produc4310539529688039102tion_a @ X @ ( produc9011544418120257559tion_a @ Y4 @ Q6 ) ) ) @ nil_Pr2430737831378544439tion_a ) ) ) ) )
                    @ ( filter8680864868550707583tion_a
                      @ ( produc5892601149255812613on_a_o
                        @ ^ [X6: c] :
                            ( produc7248784972643495020on_a_o
                            @ ^ [Y4: option_a,Q6: option_a] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1099_paths__for__input_H_Oelims,axiom,
    ! [X3: option_a > set_Pr6039302352882833200tion_a,Xa: list_a,Xb: option_a,Xc: list_P725033923280534073tion_a,Y: set_li4752145241073272345tion_a] :
      ( ( ( paths_3421422911137801637tion_a @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_a )
         => ( Y
           != ( insert4862639237864458249tion_a @ Xc @ bot_bo1823420383036508293tion_a ) ) )
       => ~ ! [X: a,Xs2: list_a] :
              ( ( Xa
                = ( cons_a @ X @ Xs2 ) )
             => ( Y
               != ( comple7848374485387887494tion_a
                  @ ( image_2649853543940064334tion_a
                    @ ( produc1365251906288819972tion_a
                      @ ^ [X6: a] :
                          ( produc1841008779807284461tion_a
                          @ ^ [Y4: option_a,Q6: option_a] : ( paths_3421422911137801637tion_a @ X3 @ Xs2 @ Q6 @ ( append2015168933276535502tion_a @ Xc @ ( cons_P2444059743230111081tion_a @ ( produc1411328923815317539tion_a @ Xb @ ( produc6743010978695025216tion_a @ X @ ( produc9011544418120257559tion_a @ Y4 @ Q6 ) ) ) @ nil_Pr6317192669668678073tion_a ) ) ) ) )
                    @ ( filter1889964280702917889tion_a
                      @ ( produc3253267719834416643on_a_o
                        @ ^ [X6: a] :
                            ( produc7248784972643495020on_a_o
                            @ ^ [Y4: option_a,Q6: option_a] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1100_paths__for__input_H_Oelims,axiom,
    ! [X3: option_a > set_Pr165121870232099142tion_a,Xa: list_P903359562653991662od_b_c,Xb: option_a,Xc: list_P794930430897013583tion_a,Y: set_li2956804489699321647tion_a] :
      ( ( ( paths_1537389554444931003tion_a @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_Product_prod_b_c )
         => ( Y
           != ( insert4060808858060226847tion_a @ Xc @ bot_bo776784062546337179tion_a ) ) )
       => ~ ! [X: product_prod_b_c,Xs2: list_P903359562653991662od_b_c] :
              ( ( Xa
                = ( cons_P4529483553340347422od_b_c @ X @ Xs2 ) )
             => ( Y
               != ( comple1007154728799465372tion_a
                  @ ( image_1495590055081105358tion_a
                    @ ( produc8039891716053847428tion_a
                      @ ^ [X6: product_prod_b_c] :
                          ( produc3553680268006689283tion_a
                          @ ^ [Y4: option_a,Q6: option_a] : ( paths_1537389554444931003tion_a @ X3 @ Xs2 @ Q6 @ ( append8060689111879548644tion_a @ Xc @ ( cons_P9024763710870818431tion_a @ ( produc1410100667027582777tion_a @ Xb @ ( produc7403377568244983126tion_a @ X @ ( produc9011544418120257559tion_a @ Y4 @ Q6 ) ) ) @ nil_Pr6423282846949386959tion_a ) ) ) ) )
                    @ ( filter8754926412232404503tion_a
                      @ ( produc6118554791394114925on_a_o
                        @ ^ [X6: product_prod_b_c] :
                            ( produc7248784972643495020on_a_o
                            @ ^ [Y4: option_a,Q6: option_a] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1101_paths__for__input_H_Oelims,axiom,
    ! [X3: produc3509355604313844263tion_a > set_Pr4270194538194170542tion_a,Xa: list_b,Xb: produc3509355604313844263tion_a,Xc: list_P5222580120286553364tion_a,Y: set_li3627933069276137716tion_a] :
      ( ( ( paths_7736527739743286123od_b_c @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_b )
         => ( Y
           != ( insert7919908882736581348tion_a @ Xc @ bot_bo1624043417848092000tion_a ) ) )
       => ~ ! [X: b,Xs2: list_b] :
              ( ( Xa
                = ( cons_b @ X @ Xs2 ) )
             => ( Y
               != ( comple5323346925621198817tion_a
                  @ ( image_1206283865676369579tion_a
                    @ ( produc4933440420390197473tion_a
                      @ ^ [X6: b] :
                          ( produc3383470850644824521tion_a
                          @ ^ [Y4: product_prod_b_c,Q6: produc3509355604313844263tion_a] : ( paths_7736527739743286123od_b_c @ X3 @ Xs2 @ Q6 @ ( append8417026981410738985tion_a @ Xc @ ( cons_P154622854812858436tion_a @ ( produc6295405223228804478tion_a @ Xb @ ( produc9148042335969415230tion_a @ X @ ( produc7403377568244983126tion_a @ Y4 @ Q6 ) ) ) @ nil_Pr1678755033776733332tion_a ) ) ) ) )
                    @ ( filter4071044247055458175tion_a
                      @ ( produc3178858238328962181on_a_o
                        @ ^ [X6: b] :
                            ( produc6118554791394114925on_a_o
                            @ ^ [Y4: product_prod_b_c,Q6: produc3509355604313844263tion_a] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1102_paths__for__input_H_Oelims,axiom,
    ! [X3: produc3509355604313844263tion_a > set_Pr2970463333272939373tion_a,Xa: list_c,Xb: produc3509355604313844263tion_a,Xc: list_P8071961135100849747tion_a,Y: set_li6676467283686695603tion_a] :
      ( ( ( paths_7097087439411469994od_b_c @ X3 @ Xa @ Xb @ Xc )
        = Y )
     => ( ( ( Xa = nil_c )
         => ( Y
           != ( insert1545917860696101923tion_a @ Xc @ bot_bo4672577632258649887tion_a ) ) )
       => ~ ! [X: c,Xs2: list_c] :
              ( ( Xa
                = ( cons_c @ X @ Xs2 ) )
             => ( Y
               != ( comple8371881140031756704tion_a
                  @ ( image_994356189062089067tion_a
                    @ ( produc4721512743775916961tion_a
                      @ ^ [X6: c] :
                          ( produc6432005065055382408tion_a
                          @ ^ [Y4: product_prod_b_c,Q6: produc3509355604313844263tion_a] : ( paths_7097087439411469994od_b_c @ X3 @ Xs2 @ Q6 @ ( append7117295776489507816tion_a @ Xc @ ( cons_P8078263686746403075tion_a @ ( produc7000084597495903677tion_a @ Xb @ ( produc629349673381738621tion_a @ X @ ( produc7403377568244983126tion_a @ Y4 @ Q6 ) ) ) @ nil_Pr379023828855502163tion_a ) ) ) ) )
                    @ ( filter4775723621322557374tion_a
                      @ ( produc2822286271266722438on_a_o
                        @ ^ [X6: c] :
                            ( produc6118554791394114925on_a_o
                            @ ^ [Y4: product_prod_b_c,Q6: produc3509355604313844263tion_a] : ( X6 = X ) ) )
                      @ ( X3 @ Xb ) ) ) ) ) ) ) ) ).

% paths_for_input'.elims
thf(fact_1103_UN__I,axiom,
    ! [A: a,A4: set_a,B: a,B5: a > set_a] :
      ( ( member_a @ A @ A4 )
     => ( ( member_a @ B @ ( B5 @ A ) )
       => ( member_a @ B @ ( comple2307003609928055243_set_a @ ( image_a_set_a @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1104_UN__I,axiom,
    ! [A: a,A4: set_a,B: c,B5: a > set_c] :
      ( ( member_a @ A @ A4 )
     => ( ( member_c @ B @ ( B5 @ A ) )
       => ( member_c @ B @ ( comple2307003618534512845_set_c @ ( image_a_set_c @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1105_UN__I,axiom,
    ! [A: a,A4: set_a,B: b,B5: a > set_b] :
      ( ( member_a @ A @ A4 )
     => ( ( member_b @ B @ ( B5 @ A ) )
       => ( member_b @ B @ ( comple2307003614231284044_set_b @ ( image_a_set_b @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1106_UN__I,axiom,
    ! [A: c,A4: set_c,B: a,B5: c > set_a] :
      ( ( member_c @ A @ A4 )
     => ( ( member_a @ B @ ( B5 @ A ) )
       => ( member_a @ B @ ( comple2307003609928055243_set_a @ ( image_c_set_a @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1107_UN__I,axiom,
    ! [A: c,A4: set_c,B: c,B5: c > set_c] :
      ( ( member_c @ A @ A4 )
     => ( ( member_c @ B @ ( B5 @ A ) )
       => ( member_c @ B @ ( comple2307003618534512845_set_c @ ( image_c_set_c @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1108_UN__I,axiom,
    ! [A: c,A4: set_c,B: b,B5: c > set_b] :
      ( ( member_c @ A @ A4 )
     => ( ( member_b @ B @ ( B5 @ A ) )
       => ( member_b @ B @ ( comple2307003614231284044_set_b @ ( image_c_set_b @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1109_UN__I,axiom,
    ! [A: b,A4: set_b,B: a,B5: b > set_a] :
      ( ( member_b @ A @ A4 )
     => ( ( member_a @ B @ ( B5 @ A ) )
       => ( member_a @ B @ ( comple2307003609928055243_set_a @ ( image_b_set_a @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1110_UN__I,axiom,
    ! [A: b,A4: set_b,B: c,B5: b > set_c] :
      ( ( member_b @ A @ A4 )
     => ( ( member_c @ B @ ( B5 @ A ) )
       => ( member_c @ B @ ( comple2307003618534512845_set_c @ ( image_b_set_c @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1111_UN__I,axiom,
    ! [A: b,A4: set_b,B: b,B5: b > set_b] :
      ( ( member_b @ A @ A4 )
     => ( ( member_b @ B @ ( B5 @ A ) )
       => ( member_b @ B @ ( comple2307003614231284044_set_b @ ( image_b_set_b @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1112_UN__I,axiom,
    ! [A: a,A4: set_a,B: product_prod_b_c,B5: a > set_Product_prod_b_c] :
      ( ( member_a @ A @ A4 )
     => ( ( member7862447941013992593od_b_c @ B @ ( B5 @ A ) )
       => ( member7862447941013992593od_b_c @ B @ ( comple7928098250179550773od_b_c @ ( image_3927929672479151951od_b_c @ B5 @ A4 ) ) ) ) ) ).

% UN_I
thf(fact_1113_None__notin__image__Some,axiom,
    ! [A4: set_a] :
      ~ ( member_option_a @ none_a @ ( image_a_option_a @ some_a @ A4 ) ) ).

% None_notin_image_Some
thf(fact_1114_None__notin__image__Some,axiom,
    ! [A4: set_Pr165121870232099142tion_a] :
      ~ ( member8742333265550254549tion_a @ none_P2271573532998059335tion_a @ ( image_6529945806525002059tion_a @ some_P2468934990214623435tion_a @ A4 ) ) ).

% None_notin_image_Some
thf(fact_1115_in__image__insert__iff,axiom,
    ! [B5: set_se8608509251338906790tion_a,X3: produc1359548802814378470tion_a,A4: set_Pr165121870232099142tion_a] :
      ( ! [C5: set_Pr165121870232099142tion_a] :
          ( ( member5078571727796508271tion_a @ C5 @ B5 )
         => ~ ( member5139186223151194895tion_a @ X3 @ C5 ) )
     => ( ( member5078571727796508271tion_a @ A4 @ ( image_1392618125580181381tion_a @ ( insert3613951195108356022tion_a @ X3 ) @ B5 ) )
        = ( ( member5139186223151194895tion_a @ X3 @ A4 )
          & ( member5078571727796508271tion_a @ ( minus_2047467904157042861tion_a @ A4 @ ( insert3613951195108356022tion_a @ X3 @ bot_bo1215043797571408818tion_a ) ) @ B5 ) ) ) ) ).

% in_image_insert_iff
thf(fact_1116_in__image__insert__iff,axiom,
    ! [B5: set_set_a,X3: a,A4: set_a] :
      ( ! [C5: set_a] :
          ( ( member_set_a @ C5 @ B5 )
         => ~ ( member_a @ X3 @ C5 ) )
     => ( ( member_set_a @ A4 @ ( image_set_a_set_a @ ( insert_a @ X3 ) @ B5 ) )
        = ( ( member_a @ X3 @ A4 )
          & ( member_set_a @ ( minus_minus_set_a @ A4 @ ( insert_a @ X3 @ bot_bot_set_a ) ) @ B5 ) ) ) ) ).

% in_image_insert_iff
thf(fact_1117_in__image__insert__iff,axiom,
    ! [B5: set_set_c,X3: c,A4: set_c] :
      ( ! [C5: set_c] :
          ( ( member_set_c @ C5 @ B5 )
         => ~ ( member_c @ X3 @ C5 ) )
     => ( ( member_set_c @ A4 @ ( image_set_c_set_c @ ( insert_c @ X3 ) @ B5 ) )
        = ( ( member_c @ X3 @ A4 )
          & ( member_set_c @ ( minus_minus_set_c @ A4 @ ( insert_c @ X3 @ bot_bot_set_c ) ) @ B5 ) ) ) ) ).

% in_image_insert_iff
thf(fact_1118_in__image__insert__iff,axiom,
    ! [B5: set_se3344102371033692456od_b_c,X3: product_prod_b_c,A4: set_Product_prod_b_c] :
      ( ! [C5: set_Product_prod_b_c] :
          ( ( member1323035592203954161od_b_c @ C5 @ B5 )
         => ~ ( member7862447941013992593od_b_c @ X3 @ C5 ) )
     => ( ( member1323035592203954161od_b_c @ A4 @ ( image_5168084938239471365od_b_c @ ( insert1747480808674937912od_b_c @ X3 ) @ B5 ) )
        = ( ( member7862447941013992593od_b_c @ X3 @ A4 )
          & ( member1323035592203954161od_b_c @ ( minus_6323455999294890031od_b_c @ A4 @ ( insert1747480808674937912od_b_c @ X3 @ bot_bo2863795366942399540od_b_c ) ) @ B5 ) ) ) ) ).

% in_image_insert_iff
thf(fact_1119_in__image__insert__iff,axiom,
    ! [B5: set_set_b,X3: b,A4: set_b] :
      ( ! [C5: set_b] :
          ( ( member_set_b @ C5 @ B5 )
         => ~ ( member_b @ X3 @ C5 ) )
     => ( ( member_set_b @ A4 @ ( image_set_b_set_b @ ( insert_b @ X3 ) @ B5 ) )
        = ( ( member_b @ X3 @ A4 )
          & ( member_set_b @ ( minus_minus_set_b @ A4 @ ( insert_b @ X3 @ bot_bot_set_b ) ) @ B5 ) ) ) ) ).

% in_image_insert_iff
thf(fact_1120_UN__E,axiom,
    ! [B: a,B5: a > set_a,A4: set_a] :
      ( ( member_a @ B @ ( comple2307003609928055243_set_a @ ( image_a_set_a @ B5 @ A4 ) ) )
     => ~ ! [X: a] :
            ( ( member_a @ X @ A4 )
           => ~ ( member_a @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1121_UN__E,axiom,
    ! [B: a,B5: c > set_a,A4: set_c] :
      ( ( member_a @ B @ ( comple2307003609928055243_set_a @ ( image_c_set_a @ B5 @ A4 ) ) )
     => ~ ! [X: c] :
            ( ( member_c @ X @ A4 )
           => ~ ( member_a @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1122_UN__E,axiom,
    ! [B: a,B5: b > set_a,A4: set_b] :
      ( ( member_a @ B @ ( comple2307003609928055243_set_a @ ( image_b_set_a @ B5 @ A4 ) ) )
     => ~ ! [X: b] :
            ( ( member_b @ X @ A4 )
           => ~ ( member_a @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1123_UN__E,axiom,
    ! [B: c,B5: a > set_c,A4: set_a] :
      ( ( member_c @ B @ ( comple2307003618534512845_set_c @ ( image_a_set_c @ B5 @ A4 ) ) )
     => ~ ! [X: a] :
            ( ( member_a @ X @ A4 )
           => ~ ( member_c @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1124_UN__E,axiom,
    ! [B: c,B5: c > set_c,A4: set_c] :
      ( ( member_c @ B @ ( comple2307003618534512845_set_c @ ( image_c_set_c @ B5 @ A4 ) ) )
     => ~ ! [X: c] :
            ( ( member_c @ X @ A4 )
           => ~ ( member_c @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1125_UN__E,axiom,
    ! [B: c,B5: b > set_c,A4: set_b] :
      ( ( member_c @ B @ ( comple2307003618534512845_set_c @ ( image_b_set_c @ B5 @ A4 ) ) )
     => ~ ! [X: b] :
            ( ( member_b @ X @ A4 )
           => ~ ( member_c @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1126_UN__E,axiom,
    ! [B: b,B5: a > set_b,A4: set_a] :
      ( ( member_b @ B @ ( comple2307003614231284044_set_b @ ( image_a_set_b @ B5 @ A4 ) ) )
     => ~ ! [X: a] :
            ( ( member_a @ X @ A4 )
           => ~ ( member_b @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1127_UN__E,axiom,
    ! [B: b,B5: c > set_b,A4: set_c] :
      ( ( member_b @ B @ ( comple2307003614231284044_set_b @ ( image_c_set_b @ B5 @ A4 ) ) )
     => ~ ! [X: c] :
            ( ( member_c @ X @ A4 )
           => ~ ( member_b @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1128_UN__E,axiom,
    ! [B: b,B5: b > set_b,A4: set_b] :
      ( ( member_b @ B @ ( comple2307003614231284044_set_b @ ( image_b_set_b @ B5 @ A4 ) ) )
     => ~ ! [X: b] :
            ( ( member_b @ X @ A4 )
           => ~ ( member_b @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1129_UN__E,axiom,
    ! [B: a,B5: product_prod_b_c > set_a,A4: set_Product_prod_b_c] :
      ( ( member_a @ B @ ( comple2307003609928055243_set_a @ ( image_4080534270163907067_set_a @ B5 @ A4 ) ) )
     => ~ ! [X: product_prod_b_c] :
            ( ( member7862447941013992593od_b_c @ X @ A4 )
           => ~ ( member_a @ B @ ( B5 @ X ) ) ) ) ).

% UN_E
thf(fact_1130_paths__for__input_H_Osimps_I2_J,axiom,
    ! [F: option_a > set_Pr165121870232099142tion_a,X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c,Q: option_a,Prev2: list_P794930430897013583tion_a] :
      ( ( paths_1537389554444931003tion_a @ F @ ( cons_P4529483553340347422od_b_c @ X3 @ Xs ) @ Q @ Prev2 )
      = ( comple1007154728799465372tion_a
        @ ( image_1495590055081105358tion_a
          @ ( produc8039891716053847428tion_a
            @ ^ [X6: product_prod_b_c] :
                ( produc3553680268006689283tion_a
                @ ^ [Y4: option_a,Q6: option_a] : ( paths_1537389554444931003tion_a @ F @ Xs @ Q6 @ ( append8060689111879548644tion_a @ Prev2 @ ( cons_P9024763710870818431tion_a @ ( produc1410100667027582777tion_a @ Q @ ( produc7403377568244983126tion_a @ X3 @ ( produc9011544418120257559tion_a @ Y4 @ Q6 ) ) ) @ nil_Pr6423282846949386959tion_a ) ) ) ) )
          @ ( filter8754926412232404503tion_a
            @ ( produc6118554791394114925on_a_o
              @ ^ [X6: product_prod_b_c] :
                  ( produc7248784972643495020on_a_o
                  @ ^ [Y4: option_a,Q6: option_a] : ( X6 = X3 ) ) )
            @ ( F @ Q ) ) ) ) ) ).

% paths_for_input'.simps(2)
thf(fact_1131_paths__for__input__set__code,axiom,
    ( paths_6942934977415288259_a_b_c
    = ( ^ [M3: fsm_a_b_c,Q5: a,Xs5: list_b] : ( if_set5301400340663253090od_c_a @ ( member_a @ Q5 @ ( states_a_b_c @ M3 ) ) @ ( paths_6276656153717473370_a_b_c @ ( h_from_a_b_c @ M3 ) @ Xs5 @ Q5 @ nil_Pr1342775757158464060od_c_a ) @ bot_bo6236370880139903240od_c_a ) ) ) ).

% paths_for_input_set_code
thf(fact_1132_Sup__set__def,axiom,
    ( comple374960348819757235tion_a
    = ( ^ [A6: set_se8608509251338906790tion_a] :
          ( collec5181485912584638289tion_a
          @ ^ [X5: produc1359548802814378470tion_a] : ( complete_Sup_Sup_o @ ( image_7702861549700458327on_a_o @ ( member5139186223151194895tion_a @ X5 ) @ A6 ) ) ) ) ) ).

% Sup_set_def
thf(fact_1133_Sup__set__def,axiom,
    ( comple2307003609928055243_set_a
    = ( ^ [A6: set_set_a] :
          ( collect_a
          @ ^ [X5: a] : ( complete_Sup_Sup_o @ ( image_set_a_o @ ( member_a @ X5 ) @ A6 ) ) ) ) ) ).

% Sup_set_def
thf(fact_1134_Sup__set__def,axiom,
    ( comple2307003618534512845_set_c
    = ( ^ [A6: set_set_c] :
          ( collect_c
          @ ^ [X5: c] : ( complete_Sup_Sup_o @ ( image_set_c_o @ ( member_c @ X5 ) @ A6 ) ) ) ) ) ).

% Sup_set_def
thf(fact_1135_Sup__set__def,axiom,
    ( comple7928098250179550773od_b_c
    = ( ^ [A6: set_se3344102371033692456od_b_c] :
          ( collec548942224018234067od_b_c
          @ ^ [X5: product_prod_b_c] : ( complete_Sup_Sup_o @ ( image_7483047868864506965_b_c_o @ ( member7862447941013992593od_b_c @ X5 ) @ A6 ) ) ) ) ) ).

% Sup_set_def
thf(fact_1136_Sup__set__def,axiom,
    ( comple2307003614231284044_set_b
    = ( ^ [A6: set_set_b] :
          ( collect_b
          @ ^ [X5: b] : ( complete_Sup_Sup_o @ ( image_set_b_o @ ( member_b @ X5 ) @ A6 ) ) ) ) ) ).

% Sup_set_def
thf(fact_1137_bot__nat__def,axiom,
    bot_bot_nat = zero_zero_nat ).

% bot_nat_def
thf(fact_1138_set__Cons__sing__Nil,axiom,
    ! [A4: set_Pr165121870232099142tion_a] :
      ( ( set_Co5710423222464989852tion_a @ A4 @ ( insert2781922097456180796tion_a @ nil_Pr596483954593762796tion_a @ bot_bo8218494557939110584tion_a ) )
      = ( image_7237091692692235915tion_a
        @ ^ [X5: produc1359548802814378470tion_a] : ( cons_P7206946803070396828tion_a @ X5 @ nil_Pr596483954593762796tion_a )
        @ A4 ) ) ).

% set_Cons_sing_Nil
thf(fact_1139_set__Cons__sing__Nil,axiom,
    ! [A4: set_Product_prod_b_c] :
      ( ( set_Co7706362885935805726od_b_c @ A4 @ ( insert6227932334100060350od_b_c @ nil_Product_prod_b_c @ bot_bo4166481423041325370od_b_c ) )
      = ( image_5872333176446027019od_b_c
        @ ^ [X5: product_prod_b_c] : ( cons_P4529483553340347422od_b_c @ X5 @ nil_Product_prod_b_c )
        @ A4 ) ) ).

% set_Cons_sing_Nil
thf(fact_1140_set__Cons__sing__Nil,axiom,
    ! [A4: set_b] :
      ( ( set_Cons_b @ A4 @ ( insert_list_b @ nil_b @ bot_bot_set_list_b ) )
      = ( image_b_list_b
        @ ^ [X5: b] : ( cons_b @ X5 @ nil_b )
        @ A4 ) ) ).

% set_Cons_sing_Nil
thf(fact_1141_set__Cons__sing__Nil,axiom,
    ! [A4: set_c] :
      ( ( set_Cons_c @ A4 @ ( insert_list_c @ nil_c @ bot_bot_set_list_c ) )
      = ( image_c_list_c
        @ ^ [X5: c] : ( cons_c @ X5 @ nil_c )
        @ A4 ) ) ).

% set_Cons_sing_Nil
thf(fact_1142_set__Cons__sing__Nil,axiom,
    ! [A4: set_a] :
      ( ( set_Cons_a @ A4 @ ( insert_list_a @ nil_a @ bot_bot_set_list_a ) )
      = ( image_a_list_a
        @ ^ [X5: a] : ( cons_a @ X5 @ nil_a )
        @ A4 ) ) ).

% set_Cons_sing_Nil
thf(fact_1143_pred__equals__eq2,axiom,
    ! [R: set_Product_prod_b_c,S: set_Product_prod_b_c] :
      ( ( ( ^ [X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ R ) )
        = ( ^ [X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ S ) ) )
      = ( R = S ) ) ).

% pred_equals_eq2
thf(fact_1144_pred__equals__eq2,axiom,
    ! [R: set_Pr165121870232099142tion_a,S: set_Pr165121870232099142tion_a] :
      ( ( ( ^ [X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ R ) )
        = ( ^ [X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ S ) ) )
      = ( R = S ) ) ).

% pred_equals_eq2
thf(fact_1145_pred__equals__eq2,axiom,
    ! [R: set_Pr7585778909603769095tion_a,S: set_Pr7585778909603769095tion_a] :
      ( ( ( ^ [X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ R ) )
        = ( ^ [X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ S ) ) )
      = ( R = S ) ) ).

% pred_equals_eq2
thf(fact_1146_SUP__Sup__eq,axiom,
    ! [S: set_se8608509251338906790tion_a] :
      ( ( comple4014415058863176682on_a_o
        @ ( image_859774862597740440on_a_o
          @ ^ [I3: set_Pr165121870232099142tion_a,X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ I3 )
          @ S ) )
      = ( ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ ( comple374960348819757235tion_a @ S ) ) ) ) ).

% SUP_Sup_eq
thf(fact_1147_SUP__Sup__eq,axiom,
    ! [S: set_set_a] :
      ( ( complete_Sup_Sup_a_o
        @ ( image_set_a_a_o
          @ ^ [I3: set_a,X5: a] : ( member_a @ X5 @ I3 )
          @ S ) )
      = ( ^ [X5: a] : ( member_a @ X5 @ ( comple2307003609928055243_set_a @ S ) ) ) ) ).

% SUP_Sup_eq
thf(fact_1148_SUP__Sup__eq,axiom,
    ! [S: set_set_c] :
      ( ( complete_Sup_Sup_c_o
        @ ( image_set_c_c_o
          @ ^ [I3: set_c,X5: c] : ( member_c @ X5 @ I3 )
          @ S ) )
      = ( ^ [X5: c] : ( member_c @ X5 @ ( comple2307003618534512845_set_c @ S ) ) ) ) ).

% SUP_Sup_eq
thf(fact_1149_SUP__Sup__eq,axiom,
    ! [S: set_se3344102371033692456od_b_c] :
      ( ( comple4688208727692891368_b_c_o
        @ ( image_4227305300989077528_b_c_o
          @ ^ [I3: set_Product_prod_b_c,X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ I3 )
          @ S ) )
      = ( ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ ( comple7928098250179550773od_b_c @ S ) ) ) ) ).

% SUP_Sup_eq
thf(fact_1150_SUP__Sup__eq,axiom,
    ! [S: set_set_b] :
      ( ( complete_Sup_Sup_b_o
        @ ( image_set_b_b_o
          @ ^ [I3: set_b,X5: b] : ( member_b @ X5 @ I3 )
          @ S ) )
      = ( ^ [X5: b] : ( member_b @ X5 @ ( comple2307003614231284044_set_b @ S ) ) ) ) ).

% SUP_Sup_eq
thf(fact_1151_bot__empty__eq2,axiom,
    ( bot_bot_b_c_o
    = ( ^ [X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ bot_bo2863795366942399540od_b_c ) ) ) ).

% bot_empty_eq2
thf(fact_1152_bot__empty__eq2,axiom,
    ( bot_bo3248333349664421723on_a_o
    = ( ^ [X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ bot_bo1215043797571408818tion_a ) ) ) ).

% bot_empty_eq2
thf(fact_1153_bot__empty__eq2,axiom,
    ( bot_bo2944298884891136090on_a_o
    = ( ^ [X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ bot_bo235252021745139059tion_a ) ) ) ).

% bot_empty_eq2
thf(fact_1154_SUP__Sup__eq2,axiom,
    ! [S: set_se3344102371033692456od_b_c] :
      ( ( comple1411054825784354266_b_c_o
        @ ( image_6949117070849169066_b_c_o
          @ ^ [I3: set_Product_prod_b_c,X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ I3 )
          @ S ) )
      = ( ^ [X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( comple7928098250179550773od_b_c @ S ) ) ) ) ).

% SUP_Sup_eq2
thf(fact_1155_SUP__Sup__eq2,axiom,
    ! [S: set_se8608509251338906790tion_a] :
      ( ( comple6110485271733551708on_a_o
        @ ( image_1760819085762999598on_a_o
          @ ^ [I3: set_Pr165121870232099142tion_a,X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ I3 )
          @ S ) )
      = ( ^ [X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ ( comple374960348819757235tion_a @ S ) ) ) ) ).

% SUP_Sup_eq2
thf(fact_1156_SUP__Sup__eq2,axiom,
    ! [S: set_se9080664490266814439tion_a] :
      ( ( comple3597892711274245467on_a_o
        @ ( image_8954226719953535660on_a_o
          @ ^ [I3: set_Pr7585778909603769095tion_a,X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ I3 )
          @ S ) )
      = ( ^ [X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ ( comple929840322319422580tion_a @ S ) ) ) ) ).

% SUP_Sup_eq2
thf(fact_1157_Sup__SUP__eq2,axiom,
    ( comple1411054825784354266_b_c_o
    = ( ^ [S2: set_b_c_o,X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( comple7928098250179550773od_b_c @ ( image_7570891413644952236od_b_c @ collec548942224018234067od_b_c @ ( image_5579720380173907261_b_c_o @ produc1873627588981547243_b_c_o @ S2 ) ) ) ) ) ) ).

% Sup_SUP_eq2
thf(fact_1158_Sup__SUP__eq2,axiom,
    ( comple6110485271733551708on_a_o
    = ( ^ [S2: set_Pr1259549870778335695on_a_o,X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ ( comple374960348819757235tion_a @ ( image_5290189515652356776tion_a @ collec5181485912584638289tion_a @ ( image_4549361653694384065on_a_o @ produc6118554791394114925on_a_o @ S2 ) ) ) ) ) ) ).

% Sup_SUP_eq2
thf(fact_1159_Sup__SUP__eq2,axiom,
    ( comple3597892711274245467on_a_o
    = ( ^ [S2: set_op1042331080186719566on_a_o,X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ ( comple929840322319422580tion_a @ ( image_5784336120283239082tion_a @ collec4135126896892755346tion_a @ ( image_6407949166727107007on_a_o @ produc7248784972643495020on_a_o @ S2 ) ) ) ) ) ) ).

% Sup_SUP_eq2
thf(fact_1160_h__out__code,axiom,
    ( h_out_5634078515784846347tion_a
    = ( ^ [M3: fsm_b_7838053553752004874tion_a,Qx: product_prod_b_c] :
          ( case_o1074465910202387531tion_a @ bot_bo235252021745139059tion_a
          @ ^ [Yqs: set_Pr7585778909603769095tion_a] : Yqs
          @ ( set_as8199280312078529077tion_a
            @ ( image_740512185282103069tion_a
              @ ( produc6364426030298005587tion_a
                @ ^ [Q5: b] :
                    ( produc5609512569699814715tion_a
                    @ ^ [X5: c] :
                        ( produc4040583092086564514tion_a
                        @ ^ [Y3: produc3509355604313844263tion_a,Q6: b] : ( produc7403377568244983126tion_a @ ( product_Pair_b_c @ Q5 @ X5 ) @ Y3 ) ) ) )
              @ ( transi1529600627604418555tion_a @ M3 ) )
            @ Qx ) ) ) ) ).

% h_out_code
thf(fact_1161_inf__Int__eq2,axiom,
    ! [R: set_Product_prod_b_c,S: set_Product_prod_b_c] :
      ( ( inf_inf_b_c_o
        @ ^ [X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ R )
        @ ^ [X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ S ) )
      = ( ^ [X5: b,Y3: c] : ( member7862447941013992593od_b_c @ ( product_Pair_b_c @ X5 @ Y3 ) @ ( inf_in8411426679332095414od_b_c @ R @ S ) ) ) ) ).

% inf_Int_eq2
thf(fact_1162_inf__Int__eq2,axiom,
    ! [R: set_Pr165121870232099142tion_a,S: set_Pr165121870232099142tion_a] :
      ( ( inf_in30398731212321501on_a_o
        @ ^ [X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ R )
        @ ^ [X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ S ) )
      = ( ^ [X5: product_prod_b_c,Y3: produc3509355604313844263tion_a] : ( member5139186223151194895tion_a @ ( produc7403377568244983126tion_a @ X5 @ Y3 ) @ ( inf_in4293130732126176052tion_a @ R @ S ) ) ) ) ).

% inf_Int_eq2
thf(fact_1163_inf__Int__eq2,axiom,
    ! [R: set_Pr7585778909603769095tion_a,S: set_Pr7585778909603769095tion_a] :
      ( ( inf_in5160421943901843420on_a_o
        @ ^ [X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ R )
        @ ^ [X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ S ) )
      = ( ^ [X5: option_a,Y3: option_a] : ( member5498148017924304208tion_a @ ( produc9011544418120257559tion_a @ X5 @ Y3 ) @ ( inf_in7151386601871364341tion_a @ R @ S ) ) ) ) ).

% inf_Int_eq2
thf(fact_1164_inf__Int__eq,axiom,
    ! [R: set_Pr165121870232099142tion_a,S: set_Pr165121870232099142tion_a] :
      ( ( inf_in2065502562373210281on_a_o
        @ ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ R )
        @ ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ S ) )
      = ( ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ ( inf_in4293130732126176052tion_a @ R @ S ) ) ) ) ).

% inf_Int_eq
thf(fact_1165_inf__Int__eq,axiom,
    ! [R: set_a,S: set_a] :
      ( ( inf_inf_a_o
        @ ^ [X5: a] : ( member_a @ X5 @ R )
        @ ^ [X5: a] : ( member_a @ X5 @ S ) )
      = ( ^ [X5: a] : ( member_a @ X5 @ ( inf_inf_set_a @ R @ S ) ) ) ) ).

% inf_Int_eq
thf(fact_1166_inf__Int__eq,axiom,
    ! [R: set_c,S: set_c] :
      ( ( inf_inf_c_o
        @ ^ [X5: c] : ( member_c @ X5 @ R )
        @ ^ [X5: c] : ( member_c @ X5 @ S ) )
      = ( ^ [X5: c] : ( member_c @ X5 @ ( inf_inf_set_c @ R @ S ) ) ) ) ).

% inf_Int_eq
thf(fact_1167_inf__Int__eq,axiom,
    ! [R: set_Product_prod_b_c,S: set_Product_prod_b_c] :
      ( ( inf_in7443460124908203175_b_c_o
        @ ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ R )
        @ ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ S ) )
      = ( ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ ( inf_in8411426679332095414od_b_c @ R @ S ) ) ) ) ).

% inf_Int_eq
thf(fact_1168_inf__Int__eq,axiom,
    ! [R: set_b,S: set_b] :
      ( ( inf_inf_b_o
        @ ^ [X5: b] : ( member_b @ X5 @ R )
        @ ^ [X5: b] : ( member_b @ X5 @ S ) )
      = ( ^ [X5: b] : ( member_b @ X5 @ ( inf_inf_set_b @ R @ S ) ) ) ) ).

% inf_Int_eq
thf(fact_1169_inf__set__def,axiom,
    ( inf_in4293130732126176052tion_a
    = ( ^ [A6: set_Pr165121870232099142tion_a,B6: set_Pr165121870232099142tion_a] :
          ( collec5181485912584638289tion_a
          @ ( inf_in2065502562373210281on_a_o
            @ ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ A6 )
            @ ^ [X5: produc1359548802814378470tion_a] : ( member5139186223151194895tion_a @ X5 @ B6 ) ) ) ) ) ).

% inf_set_def
thf(fact_1170_inf__set__def,axiom,
    ( inf_inf_set_a
    = ( ^ [A6: set_a,B6: set_a] :
          ( collect_a
          @ ( inf_inf_a_o
            @ ^ [X5: a] : ( member_a @ X5 @ A6 )
            @ ^ [X5: a] : ( member_a @ X5 @ B6 ) ) ) ) ) ).

% inf_set_def
thf(fact_1171_inf__set__def,axiom,
    ( inf_inf_set_c
    = ( ^ [A6: set_c,B6: set_c] :
          ( collect_c
          @ ( inf_inf_c_o
            @ ^ [X5: c] : ( member_c @ X5 @ A6 )
            @ ^ [X5: c] : ( member_c @ X5 @ B6 ) ) ) ) ) ).

% inf_set_def
thf(fact_1172_inf__set__def,axiom,
    ( inf_in8411426679332095414od_b_c
    = ( ^ [A6: set_Product_prod_b_c,B6: set_Product_prod_b_c] :
          ( collec548942224018234067od_b_c
          @ ( inf_in7443460124908203175_b_c_o
            @ ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ A6 )
            @ ^ [X5: product_prod_b_c] : ( member7862447941013992593od_b_c @ X5 @ B6 ) ) ) ) ) ).

% inf_set_def
thf(fact_1173_inf__set__def,axiom,
    ( inf_inf_set_b
    = ( ^ [A6: set_b,B6: set_b] :
          ( collect_b
          @ ( inf_inf_b_o
            @ ^ [X5: b] : ( member_b @ X5 @ A6 )
            @ ^ [X5: b] : ( member_b @ X5 @ B6 ) ) ) ) ) ).

% inf_set_def
thf(fact_1174_h__out__impl__helper,axiom,
    ! [A4: set_Pr2280573845676964823od_b_c] :
      ( ( produc3958908711191305138_set_b
        @ ^ [Q5: b,X5: c] :
            ( collect_b
            @ ^ [Y3: b] :
              ? [Q6: c] : ( member1645004810652465696od_b_c @ ( produc1849760930018728551od_b_c @ Q5 @ ( produc5588881204248199167od_b_c @ X5 @ ( product_Pair_b_c @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: product_prod_b_c] :
            ( case_o6570817238820213323_set_b @ bot_bot_set_b
            @ ^ [Yqs: set_b] : Yqs
            @ ( set_as2236830661276861197_b_c_b
              @ ( image_4105215589603732108_b_c_b
                @ ( produc8667095251600479042_b_c_b
                  @ ^ [Q5: b] :
                      ( produc5182368672167567274_b_c_b
                      @ ^ [X5: c] :
                          ( produc8319444739903050897_b_c_b
                          @ ^ [Y3: b,Q6: c] : ( produc794085425710893614_b_c_b @ ( product_Pair_b_c @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1175_h__out__impl__helper,axiom,
    ! [A4: set_Pr6196706626119988167od_b_c] :
      ( ( produc5556088568090873652_set_b
        @ ^ [Q5: product_prod_b_c,X5: produc3509355604313844263tion_a] :
            ( collect_b
            @ ^ [Y3: b] :
              ? [Q6: c] : ( member5811712069106484752od_b_c @ ( produc5308714569644750039od_b_c @ Q5 @ ( produc1276052047308894104od_b_c @ X5 @ ( product_Pair_b_c @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: produc1359548802814378470tion_a] :
            ( case_o6570817238820213323_set_b @ bot_bot_set_b
            @ ^ [Yqs: set_b] : Yqs
            @ ( set_as4631586148140396559on_a_b
              @ ( image_7895577655531664542on_a_b
                @ ( produc8899491091450021844on_a_b
                  @ ^ [Q5: product_prod_b_c] :
                      ( produc3521321261471934035on_a_b
                      @ ^ [X5: produc3509355604313844263tion_a] :
                          ( produc9222466129472397459on_a_b
                          @ ^ [Y3: b,Q6: c] : ( produc2493520948729567792on_a_b @ ( produc7403377568244983126tion_a @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1176_h__out__impl__helper,axiom,
    ! [A4: set_Pr6421828756912040462od_b_c] :
      ( ( produc3311379784402645683_set_b
        @ ^ [Q5: option_a,X5: option_a] :
            ( collect_b
            @ ^ [Y3: b] :
              ? [Q6: c] : ( member4523665186249005015od_b_c @ ( produc2001663624932641310od_b_c @ Q5 @ ( produc7234324658902287035od_b_c @ X5 @ ( product_Pair_b_c @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: produc3509355604313844263tion_a] :
            ( case_o6570817238820213323_set_b @ bot_bot_set_b
            @ ^ [Yqs: set_b] : Yqs
            @ ( set_as3023528999989491726on_a_b
              @ ( image_7337974018465538966on_a_b
                @ ( produc6224679594961905996on_a_b
                  @ ^ [Q5: option_a] :
                      ( produc3050390063807506671on_a_b
                      @ ^ [X5: option_a] :
                          ( produc5298298695090807442on_a_b
                          @ ^ [Y3: b,Q6: c] : ( produc3854578366862586927on_a_b @ ( produc9011544418120257559tion_a @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1177_h__out__impl__helper,axiom,
    ! [A4: set_Pr562290946369674325tion_a] :
      ( ( produc4740908828678249115od_b_c
        @ ^ [Q5: b,X5: c] :
            ( collec548942224018234067od_b_c
            @ ^ [Y3: product_prod_b_c] :
              ? [Q6: produc3509355604313844263tion_a] : ( member5270423058733307294tion_a @ ( produc7233600189605653221tion_a @ Q5 @ ( produc629349673381738621tion_a @ X5 @ ( produc7403377568244983126tion_a @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: product_prod_b_c] :
            ( case_o6717926715617704843od_b_c @ bot_bo2863795366942399540od_b_c
            @ ^ [Yqs: set_Product_prod_b_c] : Yqs
            @ ( set_as7998429123878137974od_b_c
              @ ( image_2148568948811708023od_b_c
                @ ( produc5393685784398904109od_b_c
                  @ ^ [Q5: b] :
                      ( produc5353469812776056725od_b_c
                      @ ^ [X5: c] :
                          ( produc4368638588849824252od_b_c
                          @ ^ [Y3: product_prod_b_c,Q6: produc3509355604313844263tion_a] : ( produc6366901981060558487od_b_c @ ( product_Pair_b_c @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1178_h__out__impl__helper,axiom,
    ! [A4: set_Pr6758128758281331781tion_a] :
      ( ( produc8732251689290103837od_b_c
        @ ^ [Q5: product_prod_b_c,X5: produc3509355604313844263tion_a] :
            ( collec548942224018234067od_b_c
            @ ^ [Y3: product_prod_b_c] :
              ? [Q6: produc3509355604313844263tion_a] : ( member1840535240638787982tion_a @ ( produc1879446177720309077tion_a @ Q5 @ ( produc6973863156084519702tion_a @ X5 @ ( produc7403377568244983126tion_a @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: produc1359548802814378470tion_a] :
            ( case_o6717926715617704843od_b_c @ bot_bo2863795366942399540od_b_c
            @ ^ [Yqs: set_Product_prod_b_c] : Yqs
            @ ( set_as159351887160806264od_b_c
              @ ( image_3573126336157258889od_b_c
                @ ( produc4956916273415144383od_b_c
                  @ ^ [Q5: product_prod_b_c] :
                      ( produc5652967154746714174od_b_c
                      @ ^ [X5: produc3509355604313844263tion_a] :
                          ( produc7506385956328841726od_b_c
                          @ ^ [Y3: product_prod_b_c,Q6: produc3509355604313844263tion_a] : ( produc3374755255637273753od_b_c @ ( produc7403377568244983126tion_a @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1179_h__out__impl__helper,axiom,
    ! [A4: set_Pr1247259497978818444tion_a] :
      ( ( produc7626184649506457756od_b_c
        @ ^ [Q5: option_a,X5: option_a] :
            ( collec548942224018234067od_b_c
            @ ^ [Y3: product_prod_b_c] :
              ? [Q6: produc3509355604313844263tion_a] : ( member442141391781795925tion_a @ ( produc8632033648809721756tion_a @ Q5 @ ( produc1410100667027582777tion_a @ X5 @ ( produc7403377568244983126tion_a @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: produc3509355604313844263tion_a] :
            ( case_o6717926715617704843od_b_c @ bot_bo2863795366942399540od_b_c
            @ ^ [Yqs: set_Product_prod_b_c] : Yqs
            @ ( set_as2071954791142440055od_b_c
              @ ( image_5289455629006396033od_b_c
                @ ( produc8322598343591050295od_b_c
                  @ ^ [Q5: option_a] :
                      ( produc7555325809092536794od_b_c
                      @ ^ [X5: option_a] :
                          ( produc7335867637399810301od_b_c
                          @ ^ [Y3: product_prod_b_c,Q6: produc3509355604313844263tion_a] : ( produc1276052047308894104od_b_c @ ( produc9011544418120257559tion_a @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1180_h__out__impl__helper,axiom,
    ! [A4: set_Pr3340741384720568086tion_a] :
      ( ( produc6085577125068292983tion_a
        @ ^ [Q5: b,X5: c] :
            ( collect_option_a
            @ ^ [Y3: option_a] :
              ? [Q6: option_a] : ( member8137770464567509215tion_a @ ( produc8951479680238463654tion_a @ Q5 @ ( produc4310539529688039102tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: product_prod_b_c] :
            ( case_o6845752758891366667tion_a @ bot_bot_set_option_a
            @ ^ [Yqs: set_option_a] : Yqs
            @ ( set_as4733650267230731346tion_a
              @ ( image_5980092412179217874tion_a
                @ ( produc7683150576536843528tion_a
                  @ ^ [Q5: b] :
                      ( produc7161371921572312816tion_a
                      @ ^ [X5: c] :
                          ( produc9034804303711106391tion_a
                          @ ^ [Y3: option_a,Q6: option_a] : ( produc5520355756337774067tion_a @ ( product_Pair_b_c @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1181_h__out__impl__helper,axiom,
    ! [A4: set_Pr686560580885001990tion_a] :
      ( ( produc8931667835901856761tion_a
        @ ^ [Q5: product_prod_b_c,X5: produc3509355604313844263tion_a] :
            ( collect_option_a
            @ ^ [Y3: option_a] :
              ? [Q6: option_a] : ( member3027780480095386831tion_a @ ( produc1922097903555114262tion_a @ Q5 @ ( produc1566367192716655447tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: produc1359548802814378470tion_a] :
            ( case_o6845752758891366667tion_a @ bot_bot_set_option_a
            @ ^ [Yqs: set_option_a] : Yqs
            @ ( set_as3631467928419630676tion_a
              @ ( image_4795042712613722084tion_a
                @ ( produc5532445016335710618tion_a
                  @ ^ [Q5: product_prod_b_c] :
                      ( produc8561121617700946457tion_a
                      @ ^ [X5: produc3509355604313844263tion_a] :
                          ( produc7361977849462479193tion_a
                          @ ^ [Y3: option_a,Q6: option_a] : ( produc9213854589732381429tion_a @ ( produc7403377568244983126tion_a @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1182_h__out__impl__helper,axiom,
    ! [A4: set_Pr5866527154223513677tion_a] :
      ( ( produc4538713402104808696tion_a
        @ ^ [Q5: option_a,X5: option_a] :
            ( collect_option_a
            @ ^ [Y3: option_a] :
              ? [Q6: option_a] : ( member7553362430500004246tion_a @ ( produc1279490705019198813tion_a @ Q5 @ ( produc4645961035427687802tion_a @ X5 @ ( produc9011544418120257559tion_a @ Y3 @ Q6 ) ) ) @ A4 ) ) )
      = ( ^ [Qx: produc3509355604313844263tion_a] :
            ( case_o6845752758891366667tion_a @ bot_bot_set_option_a
            @ ^ [Yqs: set_option_a] : Yqs
            @ ( set_as2664186614515276755tion_a
              @ ( image_7561047434017321436tion_a
                @ ( produc401201214887364114tion_a
                  @ ^ [Q5: option_a] :
                      ( produc2623861396443700661tion_a
                      @ ^ [X5: option_a] :
                          ( produc3626514282821632728tion_a
                          @ ^ [Y3: option_a,Q6: option_a] : ( produc3204315828778242676tion_a @ ( produc9011544418120257559tion_a @ Q5 @ X5 ) @ Y3 ) ) ) )
                @ A4 )
              @ Qx ) ) ) ) ).

% h_out_impl_helper
thf(fact_1183_ofsm__table__fix_Opinduct,axiom,
    ! [A0: fsm_a_b_c,A1: a > set_a,A22: nat,P: fsm_a_b_c > ( a > set_a ) > nat > $o] :
      ( ( accp_P6475056738455908163_a_nat @ ofsm_t871162592440740414_a_b_c @ ( produc7150388121251547178_a_nat @ A0 @ ( produc1047048094022664750_a_nat @ A1 @ A22 ) ) )
     => ( ! [M2: fsm_a_b_c,F2: a > set_a,K3: nat] :
            ( ( accp_P6475056738455908163_a_nat @ ofsm_t871162592440740414_a_b_c @ ( produc7150388121251547178_a_nat @ M2 @ ( produc1047048094022664750_a_nat @ F2 @ K3 ) ) )
           => ( ( ~ ! [X7: a] :
                      ( ( member_a @ X7 @ ( states_a_b_c @ M2 ) )
                     => ( ( ofsm_table_a_b_c @ M2
                          @ ^ [Q5: a] : ( inf_inf_set_a @ ( F2 @ Q5 ) @ ( states_a_b_c @ M2 ) )
                          @ K3
                          @ X7 )
                        = ( ofsm_table_a_b_c @ M2
                          @ ^ [Q5: a] : ( inf_inf_set_a @ ( F2 @ Q5 ) @ ( states_a_b_c @ M2 ) )
                          @ ( suc @ K3 )
                          @ X7 ) ) )
               => ( P @ M2 @ F2 @ ( suc @ K3 ) ) )
             => ( P @ M2 @ F2 @ K3 ) ) )
       => ( P @ A0 @ A1 @ A22 ) ) ) ).

% ofsm_table_fix.pinduct
thf(fact_1184_distinct__append,axiom,
    ! [Xs: list_P7785822056432494700tion_a,Ys2: list_P7785822056432494700tion_a] :
      ( ( distin7977555812838611039tion_a @ ( append7143236819997180545tion_a @ Xs @ Ys2 ) )
      = ( ( distin7977555812838611039tion_a @ Xs )
        & ( distin7977555812838611039tion_a @ Ys2 )
        & ( ( inf_in4293130732126176052tion_a @ ( set_Pr150857188848084347tion_a @ Xs ) @ ( set_Pr150857188848084347tion_a @ Ys2 ) )
          = bot_bo1215043797571408818tion_a ) ) ) ).

% distinct_append
thf(fact_1185_distinct__append,axiom,
    ! [Xs: list_P903359562653991662od_b_c,Ys2: list_P903359562653991662od_b_c] :
      ( ( distin6568250333530618337od_b_c @ ( append2547753245680614915od_b_c @ Xs @ Ys2 ) )
      = ( ( distin6568250333530618337od_b_c @ Xs )
        & ( distin6568250333530618337od_b_c @ Ys2 )
        & ( ( inf_in8411426679332095414od_b_c @ ( set_Product_prod_b_c2 @ Xs ) @ ( set_Product_prod_b_c2 @ Ys2 ) )
          = bot_bo2863795366942399540od_b_c ) ) ) ).

% distinct_append
thf(fact_1186_distinct__append,axiom,
    ! [Xs: list_b,Ys2: list_b] :
      ( ( distinct_b @ ( append_b @ Xs @ Ys2 ) )
      = ( ( distinct_b @ Xs )
        & ( distinct_b @ Ys2 )
        & ( ( inf_inf_set_b @ ( set_b2 @ Xs ) @ ( set_b2 @ Ys2 ) )
          = bot_bot_set_b ) ) ) ).

% distinct_append
thf(fact_1187_distinct__append,axiom,
    ! [Xs: list_c,Ys2: list_c] :
      ( ( distinct_c @ ( append_c @ Xs @ Ys2 ) )
      = ( ( distinct_c @ Xs )
        & ( distinct_c @ Ys2 )
        & ( ( inf_inf_set_c @ ( set_c2 @ Xs ) @ ( set_c2 @ Ys2 ) )
          = bot_bot_set_c ) ) ) ).

% distinct_append
thf(fact_1188_distinct__append,axiom,
    ! [Xs: list_a,Ys2: list_a] :
      ( ( distinct_a @ ( append_a @ Xs @ Ys2 ) )
      = ( ( distinct_a @ Xs )
        & ( distinct_a @ Ys2 )
        & ( ( inf_inf_set_a @ ( set_a2 @ Xs ) @ ( set_a2 @ Ys2 ) )
          = bot_bot_set_a ) ) ) ).

% distinct_append
thf(fact_1189_set__Cons__def,axiom,
    ( set_Co5710423222464989852tion_a
    = ( ^ [A6: set_Pr165121870232099142tion_a,XS: set_li2036598085816368716tion_a] :
          ( collec5636679273671132247tion_a
          @ ^ [Z: list_P7785822056432494700tion_a] :
            ? [X5: produc1359548802814378470tion_a,Xs5: list_P7785822056432494700tion_a] :
              ( ( Z
                = ( cons_P7206946803070396828tion_a @ X5 @ Xs5 ) )
              & ( member5139186223151194895tion_a @ X5 @ A6 )
              & ( member2632207693412262165tion_a @ Xs5 @ XS ) ) ) ) ) ).

% set_Cons_def
thf(fact_1190_set__Cons__def,axiom,
    ( set_Cons_a
    = ( ^ [A6: set_a,XS: set_list_a] :
          ( collect_list_a
          @ ^ [Z: list_a] :
            ? [X5: a,Xs5: list_a] :
              ( ( Z
                = ( cons_a @ X5 @ Xs5 ) )
              & ( member_a @ X5 @ A6 )
              & ( member_list_a @ Xs5 @ XS ) ) ) ) ) ).

% set_Cons_def
thf(fact_1191_set__Cons__def,axiom,
    ( set_Cons_c
    = ( ^ [A6: set_c,XS: set_list_c] :
          ( collect_list_c
          @ ^ [Z: list_c] :
            ? [X5: c,Xs5: list_c] :
              ( ( Z
                = ( cons_c @ X5 @ Xs5 ) )
              & ( member_c @ X5 @ A6 )
              & ( member_list_c @ Xs5 @ XS ) ) ) ) ) ).

% set_Cons_def
thf(fact_1192_set__Cons__def,axiom,
    ( set_Co7706362885935805726od_b_c
    = ( ^ [A6: set_Product_prod_b_c,XS: set_li6436108459499378894od_b_c] :
          ( collec2280997390073109977od_b_c
          @ ^ [Z: list_P903359562653991662od_b_c] :
            ? [X5: product_prod_b_c,Xs5: list_P903359562653991662od_b_c] :
              ( ( Z
                = ( cons_P4529483553340347422od_b_c @ X5 @ Xs5 ) )
              & ( member7862447941013992593od_b_c @ X5 @ A6 )
              & ( member6330420149250801815od_b_c @ Xs5 @ XS ) ) ) ) ) ).

% set_Cons_def
thf(fact_1193_set__Cons__def,axiom,
    ( set_Cons_b
    = ( ^ [A6: set_b,XS: set_list_b] :
          ( collect_list_b
          @ ^ [Z: list_b] :
            ? [X5: b,Xs5: list_b] :
              ( ( Z
                = ( cons_b @ X5 @ Xs5 ) )
              & ( member_b @ X5 @ A6 )
              & ( member_list_b @ Xs5 @ XS ) ) ) ) ) ).

% set_Cons_def
thf(fact_1194_distinct__product,axiom,
    ! [Xs: list_b,Ys2: list_c] :
      ( ( distinct_b @ Xs )
     => ( ( distinct_c @ Ys2 )
       => ( distin6568250333530618337od_b_c @ ( product_b_c @ Xs @ Ys2 ) ) ) ) ).

% distinct_product
thf(fact_1195_inputs__as__list__distinct,axiom,
    ! [M: fsm_a_b_c] : ( distinct_b @ ( inputs_as_list_a_b_c @ M ) ) ).

% inputs_as_list_distinct
thf(fact_1196_distinct_Osimps_I1_J,axiom,
    distin7977555812838611039tion_a @ nil_Pr596483954593762796tion_a ).

% distinct.simps(1)
thf(fact_1197_distinct_Osimps_I1_J,axiom,
    distin6568250333530618337od_b_c @ nil_Product_prod_b_c ).

% distinct.simps(1)
thf(fact_1198_distinct_Osimps_I1_J,axiom,
    distinct_b @ nil_b ).

% distinct.simps(1)
thf(fact_1199_distinct_Osimps_I1_J,axiom,
    distinct_c @ nil_c ).

% distinct.simps(1)
thf(fact_1200_distinct_Osimps_I1_J,axiom,
    distinct_a @ nil_a ).

% distinct.simps(1)
thf(fact_1201_distinct__singleton,axiom,
    ! [X3: produc1359548802814378470tion_a] : ( distin7977555812838611039tion_a @ ( cons_P7206946803070396828tion_a @ X3 @ nil_Pr596483954593762796tion_a ) ) ).

% distinct_singleton
thf(fact_1202_distinct__singleton,axiom,
    ! [X3: product_prod_b_c] : ( distin6568250333530618337od_b_c @ ( cons_P4529483553340347422od_b_c @ X3 @ nil_Product_prod_b_c ) ) ).

% distinct_singleton
thf(fact_1203_distinct__singleton,axiom,
    ! [X3: b] : ( distinct_b @ ( cons_b @ X3 @ nil_b ) ) ).

% distinct_singleton
thf(fact_1204_distinct__singleton,axiom,
    ! [X3: c] : ( distinct_c @ ( cons_c @ X3 @ nil_c ) ) ).

% distinct_singleton
thf(fact_1205_distinct__singleton,axiom,
    ! [X3: a] : ( distinct_a @ ( cons_a @ X3 @ nil_a ) ) ).

% distinct_singleton
thf(fact_1206_distinct_Osimps_I2_J,axiom,
    ! [X3: product_prod_b_c,Xs: list_P903359562653991662od_b_c] :
      ( ( distin6568250333530618337od_b_c @ ( cons_P4529483553340347422od_b_c @ X3 @ Xs ) )
      = ( ~ ( member7862447941013992593od_b_c @ X3 @ ( set_Product_prod_b_c2 @ Xs ) )
        & ( distin6568250333530618337od_b_c @ Xs ) ) ) ).

% distinct.simps(2)
thf(fact_1207_distinct_Osimps_I2_J,axiom,
    ! [X3: b,Xs: list_b] :
      ( ( distinct_b @ ( cons_b @ X3 @ Xs ) )
      = ( ~ ( member_b @ X3 @ ( set_b2 @ Xs ) )
        & ( distinct_b @ Xs ) ) ) ).

% distinct.simps(2)
thf(fact_1208_distinct_Osimps_I2_J,axiom,
    ! [X3: c,Xs: list_c] :
      ( ( distinct_c @ ( cons_c @ X3 @ Xs ) )
      = ( ~ ( member_c @ X3 @ ( set_c2 @ Xs ) )
        & ( distinct_c @ Xs ) ) ) ).

% distinct.simps(2)
thf(fact_1209_distinct_Osimps_I2_J,axiom,
    ! [X3: a,Xs: list_a] :
      ( ( distinct_a @ ( cons_a @ X3 @ Xs ) )
      = ( ~ ( member_a @ X3 @ ( set_a2 @ Xs ) )
        & ( distinct_a @ Xs ) ) ) ).

% distinct.simps(2)
thf(fact_1210_Suc__le__mono,axiom,
    ! [N: nat,M4: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ ( suc @ M4 ) )
      = ( ord_less_eq_nat @ N @ M4 ) ) ).

% Suc_le_mono
thf(fact_1211_le0,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% le0
thf(fact_1212_bot__nat__0_Oextremum,axiom,
    ! [A: nat] : ( ord_less_eq_nat @ zero_zero_nat @ A ) ).

% bot_nat_0.extremum
thf(fact_1213_diff__diff__cancel,axiom,
    ! [I: nat,N: nat] :
      ( ( ord_less_eq_nat @ I @ N )
     => ( ( minus_minus_nat @ N @ ( minus_minus_nat @ N @ I ) )
        = I ) ) ).

% diff_diff_cancel
thf(fact_1214_diff__is__0__eq_H,axiom,
    ! [M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ M4 @ N )
     => ( ( minus_minus_nat @ M4 @ N )
        = zero_zero_nat ) ) ).

% diff_is_0_eq'
thf(fact_1215_diff__is__0__eq,axiom,
    ! [M4: nat,N: nat] :
      ( ( ( minus_minus_nat @ M4 @ N )
        = zero_zero_nat )
      = ( ord_less_eq_nat @ M4 @ N ) ) ).

% diff_is_0_eq
thf(fact_1216_Suc__diff__le,axiom,
    ! [N: nat,M4: nat] :
      ( ( ord_less_eq_nat @ N @ M4 )
     => ( ( minus_minus_nat @ ( suc @ M4 ) @ N )
        = ( suc @ ( minus_minus_nat @ M4 @ N ) ) ) ) ).

% Suc_diff_le
thf(fact_1217_minimal__fixpoint__helper_I1_J,axiom,
    ! [F: nat > nat,P: nat > $o,K: nat,X3: nat] :
      ( ( F
        = ( ^ [X5: nat] : ( if_nat @ ( P @ X5 ) @ X5 @ ( F @ ( suc @ X5 ) ) ) ) )
     => ( ! [X: nat] :
            ( ( ord_less_eq_nat @ K @ X )
           => ( P @ X ) )
       => ( P @ ( F @ X3 ) ) ) ) ).

% minimal_fixpoint_helper(1)
thf(fact_1218_recursion__renaming__helper,axiom,
    ! [F12: nat > nat,P: nat > $o,F22: nat > nat,K: nat] :
      ( ( F12
        = ( ^ [X5: nat] : ( if_nat @ ( P @ X5 ) @ X5 @ ( F12 @ ( suc @ X5 ) ) ) ) )
     => ( ( F22
          = ( ^ [X5: nat] : ( if_nat @ ( P @ X5 ) @ X5 @ ( F22 @ ( suc @ X5 ) ) ) ) )
       => ( ! [X: nat] :
              ( ( ord_less_eq_nat @ K @ X )
             => ( P @ X ) )
         => ( F12 = F22 ) ) ) ) ).

% recursion_renaming_helper
thf(fact_1219_Suc__leD,axiom,
    ! [M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ ( suc @ M4 ) @ N )
     => ( ord_less_eq_nat @ M4 @ N ) ) ).

% Suc_leD
thf(fact_1220_le__SucE,axiom,
    ! [M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ M4 @ ( suc @ N ) )
     => ( ~ ( ord_less_eq_nat @ M4 @ N )
       => ( M4
          = ( suc @ N ) ) ) ) ).

% le_SucE
thf(fact_1221_le__SucI,axiom,
    ! [M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ M4 @ N )
     => ( ord_less_eq_nat @ M4 @ ( suc @ N ) ) ) ).

% le_SucI
thf(fact_1222_Suc__le__D,axiom,
    ! [N: nat,M6: nat] :
      ( ( ord_less_eq_nat @ ( suc @ N ) @ M6 )
     => ? [M5: nat] :
          ( M6
          = ( suc @ M5 ) ) ) ).

% Suc_le_D
thf(fact_1223_le__Suc__eq,axiom,
    ! [M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ M4 @ ( suc @ N ) )
      = ( ( ord_less_eq_nat @ M4 @ N )
        | ( M4
          = ( suc @ N ) ) ) ) ).

% le_Suc_eq
thf(fact_1224_Suc__n__not__le__n,axiom,
    ! [N: nat] :
      ~ ( ord_less_eq_nat @ ( suc @ N ) @ N ) ).

% Suc_n_not_le_n
thf(fact_1225_not__less__eq__eq,axiom,
    ! [M4: nat,N: nat] :
      ( ( ~ ( ord_less_eq_nat @ M4 @ N ) )
      = ( ord_less_eq_nat @ ( suc @ N ) @ M4 ) ) ).

% not_less_eq_eq
thf(fact_1226_full__nat__induct,axiom,
    ! [P: nat > $o,N: nat] :
      ( ! [N2: nat] :
          ( ! [M7: nat] :
              ( ( ord_less_eq_nat @ ( suc @ M7 ) @ N2 )
             => ( P @ M7 ) )
         => ( P @ N2 ) )
     => ( P @ N ) ) ).

% full_nat_induct
thf(fact_1227_nat__induct__at__least,axiom,
    ! [M4: nat,N: nat,P: nat > $o] :
      ( ( ord_less_eq_nat @ M4 @ N )
     => ( ( P @ M4 )
       => ( ! [N2: nat] :
              ( ( ord_less_eq_nat @ M4 @ N2 )
             => ( ( P @ N2 )
               => ( P @ ( suc @ N2 ) ) ) )
         => ( P @ N ) ) ) ) ).

% nat_induct_at_least
thf(fact_1228_transitive__stepwise__le,axiom,
    ! [M4: nat,N: nat,R: nat > nat > $o] :
      ( ( ord_less_eq_nat @ M4 @ N )
     => ( ! [X: nat] : ( R @ X @ X )
       => ( ! [X: nat,Y2: nat,Z4: nat] :
              ( ( R @ X @ Y2 )
             => ( ( R @ Y2 @ Z4 )
               => ( R @ X @ Z4 ) ) )
         => ( ! [N2: nat] : ( R @ N2 @ ( suc @ N2 ) )
           => ( R @ M4 @ N ) ) ) ) ) ).

% transitive_stepwise_le
thf(fact_1229_le__0__eq,axiom,
    ! [N: nat] :
      ( ( ord_less_eq_nat @ N @ zero_zero_nat )
      = ( N = zero_zero_nat ) ) ).

% le_0_eq
thf(fact_1230_bot__nat__0_Oextremum__uniqueI,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
     => ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_uniqueI
thf(fact_1231_bot__nat__0_Oextremum__unique,axiom,
    ! [A: nat] :
      ( ( ord_less_eq_nat @ A @ zero_zero_nat )
      = ( A = zero_zero_nat ) ) ).

% bot_nat_0.extremum_unique
thf(fact_1232_less__eq__nat_Osimps_I1_J,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ zero_zero_nat @ N ) ).

% less_eq_nat.simps(1)
thf(fact_1233_diff__le__mono2,axiom,
    ! [M4: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M4 @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ L @ N ) @ ( minus_minus_nat @ L @ M4 ) ) ) ).

% diff_le_mono2
thf(fact_1234_le__diff__iff_H,axiom,
    ! [A: nat,C2: nat,B: nat] :
      ( ( ord_less_eq_nat @ A @ C2 )
     => ( ( ord_less_eq_nat @ B @ C2 )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ C2 @ A ) @ ( minus_minus_nat @ C2 @ B ) )
          = ( ord_less_eq_nat @ B @ A ) ) ) ) ).

% le_diff_iff'
thf(fact_1235_diff__le__self,axiom,
    ! [M4: nat,N: nat] : ( ord_less_eq_nat @ ( minus_minus_nat @ M4 @ N ) @ M4 ) ).

% diff_le_self
thf(fact_1236_diff__le__mono,axiom,
    ! [M4: nat,N: nat,L: nat] :
      ( ( ord_less_eq_nat @ M4 @ N )
     => ( ord_less_eq_nat @ ( minus_minus_nat @ M4 @ L ) @ ( minus_minus_nat @ N @ L ) ) ) ).

% diff_le_mono
thf(fact_1237_Nat_Odiff__diff__eq,axiom,
    ! [K: nat,M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M4 )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( minus_minus_nat @ ( minus_minus_nat @ M4 @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( minus_minus_nat @ M4 @ N ) ) ) ) ).

% Nat.diff_diff_eq
thf(fact_1238_le__diff__iff,axiom,
    ! [K: nat,M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M4 )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ord_less_eq_nat @ ( minus_minus_nat @ M4 @ K ) @ ( minus_minus_nat @ N @ K ) )
          = ( ord_less_eq_nat @ M4 @ N ) ) ) ) ).

% le_diff_iff
thf(fact_1239_eq__diff__iff,axiom,
    ! [K: nat,M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ K @ M4 )
     => ( ( ord_less_eq_nat @ K @ N )
       => ( ( ( minus_minus_nat @ M4 @ K )
            = ( minus_minus_nat @ N @ K ) )
          = ( M4 = N ) ) ) ) ).

% eq_diff_iff
thf(fact_1240_le__refl,axiom,
    ! [N: nat] : ( ord_less_eq_nat @ N @ N ) ).

% le_refl
thf(fact_1241_le__trans,axiom,
    ! [I: nat,J: nat,K: nat] :
      ( ( ord_less_eq_nat @ I @ J )
     => ( ( ord_less_eq_nat @ J @ K )
       => ( ord_less_eq_nat @ I @ K ) ) ) ).

% le_trans
thf(fact_1242_eq__imp__le,axiom,
    ! [M4: nat,N: nat] :
      ( ( M4 = N )
     => ( ord_less_eq_nat @ M4 @ N ) ) ).

% eq_imp_le
thf(fact_1243_le__antisym,axiom,
    ! [M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ M4 @ N )
     => ( ( ord_less_eq_nat @ N @ M4 )
       => ( M4 = N ) ) ) ).

% le_antisym
thf(fact_1244_nat__le__linear,axiom,
    ! [M4: nat,N: nat] :
      ( ( ord_less_eq_nat @ M4 @ N )
      | ( ord_less_eq_nat @ N @ M4 ) ) ).

% nat_le_linear
thf(fact_1245_Nat_Oex__has__greatest__nat,axiom,
    ! [P: nat > $o,K: nat,B: nat] :
      ( ( P @ K )
     => ( ! [Y2: nat] :
            ( ( P @ Y2 )
           => ( ord_less_eq_nat @ Y2 @ B ) )
       => ? [X: nat] :
            ( ( P @ X )
            & ! [Y6: nat] :
                ( ( P @ Y6 )
               => ( ord_less_eq_nat @ Y6 @ X ) ) ) ) ) ).

% Nat.ex_has_greatest_nat

% Helper facts (9)
thf(help_If_2_1_If_001t__Nat__Onat_T,axiom,
    ! [X3: nat,Y: nat] :
      ( ( if_nat @ $false @ X3 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Nat__Onat_T,axiom,
    ! [X3: nat,Y: nat] :
      ( ( if_nat @ $true @ X3 @ Y )
      = X3 ) ).

thf(help_If_2_1_If_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J_J_T,axiom,
    ! [X3: set_li1159382662694783132od_c_a,Y: set_li1159382662694783132od_c_a] :
      ( ( if_set5301400340663253090od_c_a @ $false @ X3 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Set__Oset_It__List__Olist_It__Product____Type__Oprod_Itf__a_Mt__Product____Type__Oprod_Itf__b_Mt__Product____Type__Oprod_Itf__c_Mtf__a_J_J_J_J_J_T,axiom,
    ! [X3: set_li1159382662694783132od_c_a,Y: set_li1159382662694783132od_c_a] :
      ( ( if_set5301400340663253090od_c_a @ $true @ X3 @ Y )
      = X3 ) ).

thf(help_If_2_1_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_T,axiom,
    ! [X3: option5121868808592388652tion_a,Y: option5121868808592388652tion_a] :
      ( ( if_opt6106225609937793522tion_a @ $false @ X3 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_T,axiom,
    ! [X3: option5121868808592388652tion_a,Y: option5121868808592388652tion_a] :
      ( ( if_opt6106225609937793522tion_a @ $true @ X3 @ Y )
      = X3 ) ).

thf(help_If_3_1_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J_T,axiom,
    ! [P: $o] :
      ( ( P = $true )
      | ( P = $false ) ) ).

thf(help_If_2_1_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J_T,axiom,
    ! [X3: option618564342796057132tion_a,Y: option618564342796057132tion_a] :
      ( ( if_opt2424821917594415602tion_a @ $false @ X3 @ Y )
      = Y ) ).

thf(help_If_1_1_If_001t__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_Mt__Option__Ooption_It__Product____Type__Oprod_It__Product____Type__Oprod_Itf__b_Mtf__c_J_Mt__Product____Type__Oprod_It__Option__Ooption_Itf__a_J_Mt__Option__Ooption_Itf__a_J_J_J_J_J_J_J_T,axiom,
    ! [X3: option618564342796057132tion_a,Y: option618564342796057132tion_a] :
      ( ( if_opt2424821917594415602tion_a @ $true @ X3 @ Y )
      = X3 ) ).

% Conjectures (1)
thf(conj_0,conjecture,
    member5139186223151194895tion_a @ ( hd_Pro2241809909539833041tion_a @ ( map_fi7170063521196241608tion_a @ f @ ( product_b_c @ ( inputs_as_list_a_b_c @ m ) @ ( output4084235763626582864_a_b_c @ m ) ) ) ) @ ( set_Pr150857188848084347tion_a @ ( map_fi7170063521196241608tion_a @ f @ ( product_b_c @ ( inputs_as_list_a_b_c @ m ) @ ( output4084235763626582864_a_b_c @ m ) ) ) ) ).

%------------------------------------------------------------------------------