CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutSign UpSign In

Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.

| Download

Try doing some basic maths questions in the Lean Theorem Prover. Functions, real numbers, equivalence relations and groups. Click on README.md and then on "Open in CoCalc with one click".

Project: Xena
Views: 18536
License: APACHE
oleanfile3.4.2, commit cbd2b6686ddb��esinitdatafinsetalgebrabig_operatorsdataarraylemmaslogicuniquetacticwlog�Mexport_decloptionnonenonesomesomeexport_declboolffffttttexport_declhas_andthenandthenandthenexport_declhas_powpowpowexport_declhas_appendappendappendexport_decldecidableis_trueis_trueis_falseis_falseto_boolto_boolexport_declhas_purepurepureexport_declhas_bindbindbindexport_declhas_monad_lift_tmonad_lift!monad_liftexport_declmonad_functor_tmonad_map$monad_mapexport_declmonad_runrun'runexport_decllistmmap*mmapmmap'*mmap'mfilter*mfiltermfoldl*mfoldlexport_declnativenat_map3rb_mapmkexport_declname_mapnativerb_mapmkexport_declexpr_mapnativerb_mapmkexport_decltacticinteraction_monadfailedfailexport_decltactic_resultinteraction_monadresultexport_decltacticFtransparencyreducibleGreduciblesemireducibleGsemireducibleexport_decltacticmk_simp_attrLmk_simp_attrexport_declmonad_exceptthrowOthrowcatchOcatchexport_declmonad_except_adapteradapt_exceptTadapt_exceptexport_declmonad_state_adapteradapt_stateWadapt_stateexport_declmonad_readerreadZreadexport_declmonad_reader_adapteradapt_reader]adapt_readerexport_declis_lawful_functormap_const_eq`map_const_eqid_map`id_mapcomp_map`comp_mapexport_declis_lawful_applicativeseq_left_eqgseq_left_eqseq_right_eqgseq_right_eqpure_seq_eq_mapgpure_seq_eq_mapmap_puregmap_pureseq_puregseq_pureseq_assocgseq_assocexport_declis_lawful_monadbind_pure_comp_eq_maptbind_pure_comp_eq_mapbind_map_eq_seqtbind_map_eq_seqpure_bindtpure_bindbind_assoctbind_assocexport_decltraversabletraverse}traversePInfofintypeindlu_4α�Cn���e_1elemsfinsetcompletexhas_memmemfinsethas_mem	�mk�		��������
			����%��
//	�nspace�prt�recdecl�sizeof��xnat��rec�x?�#�+has_addadd?nathas_addIhas_oneone?nathas_onesizeof%finsethas_sizeof_inst	��		default_has_sizeofY�PInfo�ATTRreducibility���prt�decl�has_sizeof_inst��has_sizeof�has_sizeofmk��PInfo�ATTRinstance���class����prt�decl�sizeof_spec���#�+eq?i		U��#�+eqrefl?s�PInfo�ATTR_refl_lemma���EqnL�prt�gind��decl�elems��c��
Proj�����rec��%���PInfo�ATTR����proj��decl�complete����)�		��
Proj������	���	����PInfo�ATTR����proj��decl�rec_on��������%�7/8�������rec��	�PInfo�ATTR����auxrec�prt�auxrec�rec_ondecl�cases_on�����PInfo�ATTR����auxrec�doc�`fintype α` means that `α` is finite, i.e. there are only
 finitely many distinct elements of type `α`. The evidence of this
 is a finset `elems` (a list up to permutation without duplicates),
 together with a proof that everything of type `α` is in the list.decl�no_confusion_type���Pv1�v2����������
��/
������	����
��aelems_eq�����PInfo�ATTR����prt�decl�no_confusion�������h12�����/	�������eqrec	/	a�h1a�����/h11��		��������������	�PInfo�ATTR����no_conf�prt�decl�inj���#�+�%�7���	���/	��#�+�%�7��'�no_confusion��*�/�4	��*�PInfo�decl�inj_arrowl���#�+�%�7��'P�������#�+�%�7��'���H�inj����/	�PInfo�ATTRclass���class�declfinsetunivu_1α�_inst_1fintypefinset��a��cfintypeelems�PInfo�VMR�VMC���doc�`univ` is the universal finite set of type `finset α` implied from
 the assumption `fintype α`.decl�equations_eqn_1���a��c���e��j��a��c��e�q�PInfo�ATTR����EqnL�SEqnL�decl�mem_univ���a��cx�	�d	�	�o	��a��c�fintypecomplete	�PInfo�ATTRsimp���decl�mem_univ_val���a��cx�|multiset	multisethas_mem	�val	����a��c�mem_univ�PInfo� ATTR����decl�coe_univ���a��ceqsetcoe�e��lift_base�e���has_lift�qsetuniv��a��csetext����xeqmpriff�|��	sethas_mem	���}�����}����	������	trueidm����eqtrans������������a�����e_1��b�����e_2��congr���������/	congr_arg��������/��������������propext�����mem_coe	���������a��c�iff_true_intro����		���������α�ax��{�������mem_univ	�����iff_self��trivial�PInfo�"ATTR����decl�subset_univ���a��cs�ehas_subsetsubset�}�has_subset	����a��c��ea	_x�{�d���/�PInfo�%decl�eq_univ_iff_forall���a��cs�e���m�}��x	�O��a��c�
�e���]�������]�����]��a	�O�\�����Z�g���Z�	���O�N�o	x	��{/�d/�/	��Z�t�extu_1	��forall_congr_eq	�	�s�	�O�	���s�o���O���O�Oy���O�r����r���	����Oiff_true�O�\�\���\��h�g���3�g�9�PInfo�	'decl�piecewise_univ�u_2��a��c_inst_2idecidable��δ�	�fig�/�i��piecewise������o�/j�/��a��c������������funext�x�������i���eq��������o��	���������������������a���"����e_1�����	a�	��$�
�/e_2��������
��������/	���$����/����������ite��decidable_of_decidable_of_iff�{��d�����������������:i��;�{��d����o������6���Ocongr_fun��7���b�piecewiseequations_eqn_1�����	��if_simp_congr���D���������J�������if_true���K���������eq_self_iff_true���9�PInfo�*ATTR����declfintypedecidable_pi_fintype_proof_1u_1u_2α�aβ��4_inst_1�bfa	g�9����a/H�{��d����h��"�8��3"�9/���5�a�6���7���8���:�����������������������;/������������������/�;/���;/���;/��a�����=����h'����trueintroimp_congr_eq���������������a��c�����h	���������>���>�����	/		��forall_prop_of_true�������������x/�C���a/�����functionfunext_iff$"/�C/��������3���9�PInfo�24	decl�1�3�4�5�a�6���7��_inst_2a	decidable_eq"decidable_eq%���5�a�6���7���G�4�8���:��decidable_of_iff���9����;��<�C�h�/�����8�2�3�4�/�decidable_dforall_finset#����;��<�C�Ga�h�C/��8�PInfo�14	prt�1VMR�1_lambda_1VMR�1VMC�O4	�N�M_freshg���P_freshg���P_freshg��VMC�1
4	�:�8�G�7�6�5�O�L�'decl�1equations_eqn_1�3�4�5�a�6���7���G�4��3�4�6�1(*	�`�5�a�6���7���G�4�.�6�k�PInfo�[4	ATTR����[EqnL�[SEqnL�1ATTR����1classdecidable�1��decl�0decidable_forall_fintype_proof_1���a_inst_1�cp�����a	H�r8a	����a�_�c�`�y���~�������~�����~���}�}�����{�}���a	�z�a	���a	���=�r8�=��8�>��8�����r��������������>���>������������}�}���}������3�}�9�PInfo�^9	decl�]���a�_�c�`�y_inst_2decidable_pred	���c��a�_�c�`�y�d���;���a�b�{�o/���^�	�R�q�a�b�����M�N��8�PInfo�]9	prt�]VMR�]_lambda_1VMR�]VMC�f9	�N�M�P_freshe�$VMC�]9	�d�`�_��f�L�'decl�]equations_eqn_1���a�_�c�`�y�d��m���]�	����a�_�c�`�y�d��y�����PInfo�k9	ATTR����kEqnL�kSEqnL�]ATTR����]classdecidable�]��decl�0decidable_exists_fintype_proof_1���a_inst_1�cp�y��Exists	a	�q�rH�r8������a�o�c�p�y������������������������������pa	���t�u��e_1���u/����u�����	�����funext	�	��x	��h'�r�y�z�����x	�y�r8iffmpr�r�������r	��)�2exists_prop_of_true�r�,�1�����������3��9�PInfo�n=	decl�m���a�o�c�p�y_inst_2������a��a�o�c�p�y�}���;�R�P�r�������n�	�decidable_dexists_finset�q����
�PInfo�m=	prt�mVMR�m_lambda_1VMR�mVMC��=	ha�P_freshh�JvVMC�m=	�}�p�o�����'decl�mequations_eqn_1���a�o�c�p�y�}��m�S�m�	�h��a�o�c�p�y�}��y�S�r�PInfo��=	ATTR�����EqnL��SEqnL�mATTR����mclassdecidable�m��decl�0decidable_eq_equiv_fintype_proof_1�u_2��a�aequiv��b�	����a��to_fun7	��eq77�	��a�������������zintro����h��equivext7/	congr_fun7/x//x/coe_fn8777��/equivhas_coe_to_fun7�/��/��	congr_arg<7����������/�PInfo��A	decl�������a����_inst_1��_inst_2�2decidable_eq<����a�������������������/�;�������������/��������/�g��9���H�a�b��������PInfo��A	prt��VMR��_lambda_1VMR��_lambda_2VMR��_lambda_3VMR��VMC��A	�����H�P_freshh�L.VMC��A	���P_freshh�L/
VMC��A	���P_freshh�L0
VMC��A	������������������1�'decl��equations_eqn_1�����a���������������������	����a�������������8EFFE�����PInfo��A	ATTR�����EqnL��SEqnL��ATTR�����class�\����decl�0decidable_injective_fintype_proof_1�����a����xa���functioninjective7	��a₁	a₂����8�m�	��a�������	���p������e_1���O���	������equations_eqn_17	�PInfo��E	decl�������a����_inst_1��_inst_2decidable_eq	_inst_3�2	decidable_pred7��//�
/��a�����������8���9���;����
�/�������������8�m�	������/�������Ra����/����Q���forall_prop_decidable�M���M�P8h�M�	�PInfo��E	prt��VMR��_lambda_1VMR��_lambda_2VMR��_lambda_3VMR��VMC��E	���P_freshh�Si�P_freshh�Sh�P_freshh�SeVMC��E	�����P_freshh�Sg�P_freshh�Sf������VMC��
E	���������P_freshh�Sd���]VMC��
E	��������������]decl��equations_eqn_1�����a�����������8���9�e�?�����/	�s��a�����������8���9�r�?��PInfo��E	ATTR�����EqnL��SEqnL��ATTR�����class�\����decl�0decidable_surjective_fintype_proof_1�����a����x�	�����surjective7	��b�Pa���a�������	�����+������equations_eqn_17	�PInfo��H	decl�������a����_inst_1��_inst_2fintype6_inst_3�9�<��/��a���������������9���;�E�����/����/�������K������/�]6/	��/����/�n�/������PInfo��H	prt��VMR��_lambda_1VMR��_lambda_2VMR��VMC��H	���P_freshh�Y+�P_freshh�Y*�P_freshh�Y)VMC��	H	�������P_freshh�Y'���mVMC��	H	��������������]decl��equations_eqn_1�����a���������������9�e�������/	����a���������������9�r�����PInfo��H	ATTR�����EqnL��SEqnL��ATTR�����class�\����decl�0decidable_bijective_fintype_proof_1�����a����x�	�����bijective7	��and�����a�������	�����+������equations_eqn_17	�PInfo��K	decl�������a����_inst_1��_inst_2�8_inst_3��	_inst_4�2�:�����/��a����������8��
�������E�����������
�������������anddecidable��!�z��/��������������������/	�5
�PInfo��K	prt��VMR��VMC��K	������������	
��	decl��equations_eqn_1�����a����������8��
���e�������/	�A��a����������8��
���r��O�PInfo�K	ATTR����EqnL�SEqnL��ATTR�����class�\����decl�0decidable_left_inverse_fintype�����a����_inst_1��_inst_2�8f��g����functionright_inverse7/���a��������	�8�
����`
this��x��m��\���p����nAnnotshow�PInfo�N	prt�VMR�_lambda_1VMR�VMC�
N	���P_freshh�c��P_freshh�c��P_freshh�c�VMC�	N	��
�	������]decl�equations_eqn_1�����a��������	�8�
����`m�f�����/	�{��a��������	�8�
����`y�f���PInfo�N	ATTR����EqnL�SEqnL�ATTR����classdecidable���decl�0decidable_right_inverse_fintype�����a����_inst_1��_inst_2��f��g�`��functionleft_inverse7/���a�������� ���!���"�`
���x/���	�����%/����/��Annot��PInfo�R	prt�VMR�_lambda_1VMR�VMC�&
R	���P_freshh�g�P_freshh�g�P_freshh�gVMC�	R	�"�!� �����&�]decl�equations_eqn_1�����a�������� ���!���"�`m�������/	����a�������� ���!���"�`y�����PInfo�1R	ATTR����1EqnL�1SEqnL�ATTR����classdecidable���decl�0of_multiset_proof_1���a_inst_1�7s��Hx	�I������{multisetto_finset/��/�����	��a�5���6���7��������v��/��/	�������������������{����/����������	��multisetmem_to_finset/��	�PInfo�4Wdecl�3���a�5���6���7���b��a�5���6���7���������/�X�4�	
�PInfo�3WVMR�3VMC�3W�7�6�5��;to_finsetdoc�3Construct a proof of `fintype α` from a universal multisetdecl�3equations_eqn_1���a�5���6���7���m��3�	�*��a�5���6���7���v��4�PInfo�?WATTR����?EqnL�?SEqnL�3decl�0of_list_proof_1���a_inst_1��llistHx	�I�Alisthas_mem��{�Dto_finset/��	��a�B���C�B�E�J���P��v�A/�E/	�����P�\����O��[���{�L�	�[listmem_to_finset/��	�PInfo�A\decl�@���a�B���C�B�E�J���a�B���C�B�E�J��K�!�A�	�PInfo�@\VMR�@VMC�@\�E�C�B��Jto_finsetdoc�@Construct a proof of `fintype α` from a universal listdecl�@equations_eqn_1���a�B���C�B�E�J�/�@�	����a�B���C�B�E�J�;���PInfo�N\ATTR����NEqnL�NSEqnL�@decl�0exists_univ_listu_1α�a_inst_1�c���Bl�B��listnodup�P	�J�Q�a�R�c_a��a�B�mquotiente�A	listis_setoide	quotientmkf������Existsdcases_onf���W���m���C�����C�����q�V���������C�S�C����/x/���A��E�w��h��id_rhs���V�S�V������_��>�A��E��]introf�V��eqmp���nodupe/��/���/��������������������V��/�/���������	�f���V����_a�	������������>��������������	���	������eqsymmf�	����andintro�����nodupe/���e/quotientexists_repf�B�����q�PInfo�O`decl�0cardu_1α�a_inst_1�c?�q�a�r�c�card�p�q�PInfo�ogVMR�oVMC�og�r�qfinsetcarddoc�o`card α` is the number of elements in `α`, defined when `α` is a fintype.decl�oequations_eqn_1�p�q�a�r�cn�o�p�	O�q�a�r�cz�	T�PInfo�wgATTR����wEqnL�wSEqnL�odecl�0equiv_fin_of_forall_mem_list_match_1_aux_param_0α�z_inst_1decidable_eqillistihx	�ii�	_�Hind�nodupi_afinlistlengthi/	m�	n�	o�a�finmk�	o�/��index_ofi���/�-has_ltlt?nathas_lt�	�	y�	a��	_��	e�/listindex_of_lt_lengthi���/��i�	u�nth_lei�/��val�	y��is_lt�	y�{�	\�|�	^�~�	`���	j���	m���	r��cases_on�	t���	um�	n�	y����	w�	o���	{����������-�	��	��	��	a��	_��	e���	���	�������	��	����	��	��	��	�val?is_lt�	��	y��m�	n�	�����	w�	o���	{����������-�	��	��	��	a��	_��	e���	���	�������	��	����	��	��	��	��	w
�	�Annotinnaccessible�
fineq_of_veq�	��
�
�zmp�	k��i?j?h₁�	��	o��h₂�
�	o�
���i��	����
)	n/listnodup_iff_nth_le_inji���	��
�	��
�-�	��	��
��	��	��
��	���
�listnth_le_memi���
?�	��
���
&��	��	��
�

�	��-�	��	��
Y��	��	��
Y��
I�
Y��
O�	��
X�	��
X�	��
h�������
q�����
q�
V�	��
j�
x���"��"�e_1�
&��$�
�$�e_2�
&��i
���
&�
���
�/	�iin�
��$�
����/�
��
m�
y��index_of_nth_lei��	��
y��
l�
p�
{�i��
{��
z�
y���/i��
y�9�PInfo�yjdecl�yequations_eqn_1_aux_param_0�{�	\�|�	^�~�	`���	j���	mi?h�	��	t��	��	��	��	z�
��y����/	�
��
�	y�
��
��
�	k�/��?��?���
�	����
"��
&�
�	��
��
�	�
1�
8�/	�	��
��	��
��-�	��	}�
�/�	y�	��
�/�	���
�/�
M�/�
��	��
����
&��	��
���	��
��������������
�	������"��"����
&��$��$�
���
'�
�����
���
�/	�
���$����/�
����
�����/����
���������
����9�{�	\�|�	^�~�	`���	j���	m��?���
���
�id_delta�
��
��PInfo��jATTR�����EqnL��decl�0equiv_fin_of_forall_mem_list_proof_1u_1�{�a�|���~�B���J���	�����/��	�lengthu/	�{�a�|���~�B���J���-�r�[��u/��	���PInfo��jdecl��_proof_2���{�a�~�A���	n�o�	��	��o	���{�a�~�������	����PInfo��jdecl��_proof_3���{�a�|���~�B���Ja�m/���	n�q��u��	��o��	�����/�	w���i��������D�-�	��������z����{�a�|���~�B���J�������������������������"/�"�e_1�m�$��$�e_2�m��u�
���m�
���/	�vv�
�$�
���/������u/��	�	��q���v/������/v/�9�PInfo��jdecl��_proof_4���{�a�|���~�B���J����_x��m�	n������	w�o�/�i���/�-�	�����/�z���/��������/�	���	���{�a�|���~�B���J��������yu�/	�PInfo��jdecl�����{�a�|���~�B���J�����vn/���{�a�|���~�B���J���equivmkvn/����/�������/	���������������/	����/	�PInfo��jVMR��_lambda_1VMR��_lambda_2VMR��VMC��l���P_freshh���P_freshh���Gindex_ofVMC��m�����Gnth_le_mainVMC��j�����~�|�{����doc��If `l` lists all the elements of `α` without duplicates, then `α ≃ fin (l.length)`.decl��equations_eqn_1���{�a�|���~�B���J����8vnnv�I����/	�n�{�a�|���~�B���J�����I�{�PInfo��jATTR�����EqnL��SEqnL��decl�0equiv_fin_proof_1u_1α�a_inst_1�c�8��nn��trunc��G�	n�	T�����	n�card��	F���a���c����α������e_1���������	������α�a���ae_1���aβ����e_2�������G��H	�����a������/�G���a����n?��?e_1n�"?�	�	n�	T����?�	T�	O���w��uequations_eqn_1��q�PInfo��vdecl��_proof_2�����aa��subsingleton�a���quotmk���setoidr�����_a�	�����C���C��	_a�������H�	n��/���V���V�����a����pisubsingleton�����������	�����G�	n����a���
�
���
�
���
truncsubsingleton��
�PInfo��vdecl��_proof_3�����a���c���	F���a���c�	2�q�PInfo��vdecl�������a���c_inst_2�7���G	�	n�	R	���a���c���
5���
;���
6�	n��	������	quotrec_on_subsingleton������_x����������������	n���	����	��l��hx�Znd��truncmk����	n�
Q���������		�v���	�	6	����		�PInfo��vVMR��_lambda_1VMR��_lambda_2VMR��VMC��v��VMC��	y�������P_freshh��u����mkVMC��
v����������quotrec_on_subsingletondoc��There is (computably) a bijection between `α` and `fin n` where
 `n = card α`. Since it is not unique, and depends on which permutation
 of the universe list is used, the bijection is wrapped in `trunc` to
 preserve computability.decl��equations_eqn_1�����a���c���
5�t�
;����	�
|���a���c���
5���
;�
��PInfo��vATTR�����EqnL��SEqnL��decl�0exists_equiv_finu_1α�a_inst_1�c�q?n?nonempty8��nn��
6�	n���a��c�c?�
��	Tnonempty_of_trunc8�nn����
�����	classicaldec_eq��PInfo��|decl�0subsingleton_match_1_aux_param_0α�	\s₁��h₁��	a	�
�	��	_afintype�	�
&�
���	�	�	\�
�
���
���
�����
��
&�
�/�
�/	��
���/�	a��
���
������
�e_1�
&�
����
&�
���
�����
����
�����
����	a��
���
������
&�
�/�������
������
��
�������������	��
��
����	���
��finsetext��/����������������������
����
������	��
��
����������������,�5�������forall_true_iff���9��
���
�e_1�
&�
�����
�����	a�
�
��
�
��
��W��
����
&�
�����
��	a�
��c�
��ceqdrec��e��e��
&�
�/�
&�
��
��t�	�w�
��
��t���|��	a�
����
���	�
��
��c�
��c�
��e��e��o�	a�t�|�
��t�
��e	/	/�N�PInfo�	decl�equations_eqn_1_aux_param_0�	�	\�
�
���
�s₂�
�h₂��	a/�
�/�
�/�
��
��
���/	�������
���
�����	��
���
����U��
���W��
&�^����	a�
��
��
��
��
��l�������
&�e/�
&�
��o�
��o�	���
��p���p��t�	a��
���
��	�
��
��
��
��
��
��������c�	a�o�p�
��o�
���	/	���
&���������6�����6�
/� ���<�/���
�/�
�	�>��6�E�/�/�/�D�/���/���D�������A����A������
���C����C�������5��/�����H/�9	�	�	\�
�
���
���
�����\���^�����PInfo�	ATTR����EqnL�decl�_match_2_aux_param_0�	�	\_a�
�b�
��
&�
��	�	\����
������
��
���
���	�	b�
��
���_x�
��
��
�	��
���	�PInfo�	decl�equations_eqn_1_aux_param_0�	�	\�
�
���
��
���
��
���!	�
�	��
���	�	�	\�
�
���
��\���^�����PInfo� 	ATTR���� EqnL� decl�0subsingletonu_1�	�asubsingleton�#�c�	�asubsingletonintro��c_x�c��	�PInfo�"	prt�"VMR�"VMC�"�	decl�"equations_eqn_1�#�	�a�
����"�#���	�a�\�����PInfo�)	ATTR����)EqnL�)SEqnL�"ATTR����"class�$�"��decl�0subtype_match_1���ap���s�eHx	�o_asubtypex���{��/��d������mk��multisetpmap/��a/��subtypemk/���	x/�
����multisetnodup_pmap/���������a/_x��b�_x�congr_arg������2�������	�subtypeval����	3	��a�,���-�e�.���0��subtypecases_on/��0���{�����d�.��.���.����.�6����������9��
�C/�������.�8�;�=�C�<��=���>��?��
����2�������M	�R���M�	2�val/property�����{����2�����k���k���
�jAnnot������k�6���q�j�	/�9��
�W�����-����a����R����������h���m�
��
�{��d���������
�Annot��	multisetmem_pmap��k�y�{�}���u������c�	�}�H���m����2�������	�
�V	�������
��Annot��	�-�B/����rfl�k�{�
���������PInfo�+�decl�+equations_eqn_1���a�,���-�e�.��xpx���
��3�;�d�+��/	���-�/���.���.���D��G����	�}�H�������
�V��D�X��	����.�8�;�=�C�����������=�H��m�k�{	�
�B	/�j��� �-���X8���.���
�.�X8�2��a�,���-�e�.���N�O���\���^�����PInfo�M�ATTR����MEqnL�Mdecl�0subtype_proof_1���a�,���-�e�.���9a�|�X��a�,���-�e�.���9�
�|�����PInfo�Q�decl�P_proof_2���a�,���-�e�.����������a���������X��a�,���-�e�.������6���d�f�X�<�=���>��?���
����
������	2�PInfo�S�decl�P_proof_3���a�,���-�e�.��_x���$��a�,���-�e�.���V����/	�PInfo�U�decl�P���a�,���-�e�.���b����a�,���-�e�.����������_�p�d�f�Q�	�S�	�U�	�PInfo�P�prt�PVMR�P_lambda_1VMR�PVMC�W��F�EVMC�P	��.�-�,��W�pmapdecl�Pequations_eqn_1���a�,���-�e�.���m���P�	����a�,���-�e�.���v�����PInfo�Z�ATTR����ZEqnL�ZSEqnL�Pdecl�0subtype_card���ap��s�eH��n�	R�������	M��a�\���]�e�^��multisetcard_pmap���p�c�2��f�����PInfo�[�decl�0card_of_subtype���ap��s�eH��_inst_1��n�	R���	M/	��a�b���c�e�d���e���������	R��x/���/��	���������?��_a?��n�	R�.�	M���������i?�����0subtype_card/�	�q�a�q�ae_1���r�b	�r�!���	R/�	R�u_1��a/�q�a�c	�%�q�a�q�ae_1���r�!���a�q�a�k��/n�	R�	�	S�'��)	z�%�'�)��	/	���?�%�%�-���r�?�%subsingletonelim�����-�����������PInfo�a�decl�0of_finset���ap��s�eHx	�o�I����	�bcoe_sort�}sethas_coe_to_sort	��a�o�|�p�e�q����x�v��/��/�PInfo�n�VMR�nVMC�n��q�p�o��Pdoc�nConstruct a fintype from a finset with the same elements.decl�nequations_eqn_1���a�o�|�p�e�q���m���n�	����a�o�|�p�e�q���v�����PInfo�x�ATTR����xEqnL�xSEqnL�ndecl�0card_of_finset���ap�|s�eH��n�	R��������a�z�|�{�e�|������PInfo�y�ATTR����ydecl�0card_of_finset'���ap�|s�eH��_inst_1��n�	R������/����a�~�|��e������������������/	���������_a?��n�	R��������/�
��������������0card_of_finset/	�o�����������PInfo�}�decl�0of_bijective_match_1�����a����_inst_1��f�		H��	b_a���������66��6��6��map6��functionembeddingmk6����left�� 	��/��a��������������������������K��	�����-���
��
�	������/��
��/����/�X��`��a�,��_x����
��
����������
����������o��eqsubst7��f���tmem_map_of_mem6��������
��������/�o�������PInfo���decl��equations_eqn_1�����a����������������a�e��
��H��������/	������������i�������
��
�����~���X	�o���D�F������a�����������������������\�H�^�H���PInfo���ATTR�����EqnL��decl�0of_bijective_proof_1�����a�������	�����
	��a�������	���������	�PInfo���decl��_proof_2�����a�����������������/�
/�
/��/��/	��G	��	����a�������������������/	��right�����PInfo���decl�������a������������������a���������������6�/�/�����/��	�����/	�PInfo���VMR��VMC�������������tmapdoc��If `f : α → β` is a bijection and `α` is a fintype, then `β` is also a fintype.decl��equations_eqn_1�����a����������������������/	�1��a������������������=�PInfo���ATTR�����EqnL��SEqnL��decl�0of_surjective_match_1�����a����_inst_1��_inst_2��f��b_a��������image6����	� ��a���������������������P�*����K��	�����a�5�Q�����������F�`��a�`��_x��Q�Q���������	���c�j�w�X�tmem_image_of_mem6����������/�����PInfo���decl��equations_eqn_1�����a������������������a�e�N�
��k��������/	�����������������Q����/����	�~���g�F����a������������������������N�\�k�^�k���PInfo���ATTR�����EqnL��decl�0of_surjective_proof_1�����a����������������H����/��V��a����������������������/����/	���PInfo���decl�������a����������������������/��a���������������������/�Q�/��/������������/	�PInfo���VMR��VMC���������������timagedoc��If `f : α → β` is a surjection and `α` is a fintype, then `β` is also a fintype.decl��equations_eqn_1�����a������������������������������/	����a���������������������E���	�PInfo���ATTR�����EqnL��SEqnL��decl�0of_injective_proof_1���ahαnotnonemptyx��has_emptycemptyc�}�has_emptyc	��a�����falseelim�#nonemptyintro	�PInfo���ncomp��decl�������a����_inst_1��f�H���b/��a��������������1	_instp����classicaldecdite���<�b����<	_inst_2inhabited�classicalinhabited_of_nonempty��0of_surjective6���������/��functioninv_fun6��/��inv_fun_surjective7��/����<����?� ������PInfo���decl��equations_eqn_1�����a��������������1�m�2�����/	�k��a��������������1�v�2�w�PInfo�ѧATTR�����EqnL��SEqnL��decl�0of_equiv��u_1����α�a_inst_1�cf��	��������a���c�����8	������	��bijective��7	�PInfo�ҮVMR��_lambda_1VMR��VMC������P_freshh��|
VMC���������������doc��If `f : α ≃ β` and `α` is a fintype, then `β` is also a fintype.decl��equations_eqn_1�����������a���c�����7������	���������a���c�����F���PInfo�ݮATTR�����EqnL��SEqnL��decl�0of_equiv_card�����a����_inst_1��f��n�0card6	��	�%��a������������multisetcard_map6	coe_fn66��embedding6	��has_coe_to_fun6	�	������	�!	����	���p�PInfo�ްdecl�0card_congru_1u_2α�aβ��_inst_1��_inst_2��f��n�"	�����a��������������������n����/	�������������_a?��n�7��/	n��������������0of_equiv_card����/	�q���q��e_1�����r�
�r�
�����������/�q����	���q���q��e_1��r�
�����q�����/n���	�����	z��������	/	���?��������r�?���m���"���;���PInfo��decl�0card_equ_1u_2α�aβ��F��G����n����nonempty8�����������a���������������r�uh�r��8��������trans�n�/�	n�����nn/�	n����
truncout8�nn��H���
�/	��/���classicalprop_decidable��Annotcalc
�E��nn�������������������_a?����	n���	n�����
�����������refln��Annot�
��symm�n����8�nn����n���0equiv_fin�����/����Annot�_x�u_a�t����dcases_on8�������t��n�	R�/�'val�������0card_congr����/�PInfo��decl�0of_subsingleton_proof_1���aa_inst_1��b	�Nfinsetsingleton	��a�
����	�-���m	finsetmem_singleton	�c	�PInfo��decl����a�
����!��a�
����	��	��	�PInfo��VMR�VMC����
��singletondecl�equations_eqn_1���a�
����m�!��	���a�
����v�!��PInfo��ATTR����EqnL�SEqnL�decl�0univ_of_subsingleton���aa_inst_1���X������a�������}�(�PInfo��ATTR����ATTR����decl�0card_of_subsingleton���aa_inst_1��n�
7�M��a����rfl?�3�PInfo��ATTR����ATTR����decl�0card_eq_sum_onesu_1α�a_inst_1�c�	U�sum�?natadd_comm_monoid�q_xM� �a�!�cfinsetcard_eq_sum_ones��q�PInfo��declsetto_finset_proof_1���as�|_inst_1�b�������
�map������		�	�v	�����X�o�X��a�+�|�,�Smultisetnodup_map�X	�]�ba�Xb��subtypeeq/�v/�������/�	2�X�a�PInfo�*�decl�)���a�+�|�,�S�}��a�+�|�,�S��	�c�*�	�PInfo�)�VMR�)_lambda_1VMR�)VMC�4�cVMC�)��,�+��4�mapdoc�)Construct a finset enumerating a set `s`, given a `fintype` instance.decl�)equations_eqn_1���a�+�|�,�S�X�)�	����a�+�|�,�S�v�}���PInfo�8�ATTR����8EqnL�8SEqnL�)decl�(mem_to_finset���as�|_inst_1�Sa	���N��	����a�:�|�;�S�<	�������������������������������������P�x������a�����Px����h���x���m���v��R��������:�v��>���������������a�����/�t�������@�����{���������������o��	���������T����������o�������N������	�chas_mem��J�$/�$�e_2���$�S�$��e_3�m�d����d�
���{�
����/	���$����/��L�v����8	��	��mem_mk��������mem_map�������t�������t������e_1����������	��������������	���\�����w�	��������x�����x�����@��������������a���H��e_1��b���J��e_2���������/	���������������a��c�����
v��	����������t��true_and���Exists�	��x���x�������	��set_coeexists	�p�t�
�t�e_1�����u�����	���>���?�������	��� ����x���?���	���>�����exists_prop������Pa���=/�s����exists_eq_right�����������������3���9�PInfo�9�ATTR����9decl�(mem_to_finset_val���as�|_inst_1�Sa	������������a�V�|�W�S�X	�(mem_to_finset	�PInfo�U�ATTR����Udeclfinsetcard_univ���a_inst_1�cn�	O�	T��a�\�c�:�	O�PInfo�[�ATTR����[declfinsetcard_univ_diff���a_inst_1�c_inst_2�
5s�}n��has_sdiffsdiff�J�has_sdiff����/�3�qhas_subsub?��has_sub�%	����a�_�c�`�
5�a�}finsetcard_sdiff�!�q�	�PInfo�^�declfinfintypen?fintype�
��l?��
��3�
�coelist�
���
�coe_to_lift�
��L�Ocoe_base�
��L�O�has_coe�
�listfin_rangelistnodup_fin_rangelistmem_fin_range�PInfo�k�	prt�kVMR�kVMC�k�	�l?��fin_rangedecl�kequations_eqn_1�l?m�D�k�f�l?y�D�j�PInfo�{�	ATTR����{EqnL�{SEqnL�kATTR����kclass�m�k��declfintypecard_finn?nfintypecard�
��j�~?listlength_fin_range�PInfo�}�ATTR����}declfinuniv_succn?m��	nIM��}�i�|insert�}�~�has_insert�}���}���	nIMfindecidable_eqI	Mhas_zerozero�}finhas_zero�image�
��}��finsucc���
��j��?�ext'�}����m�}��������z����������i���������������������	n����IM���������	n�����������iorm�����
���a���sm����	���������������������������������C����	�z	��	��	�	���������������������������	n�����	nI/M��I�M��������������"�%�mem_insert���������H���H��e_1���J���J��e_2���������/	�������������$������������������������	n	�z�M���M���M�i	H�Wm���	����K�a�tmem_image�����������t�������t���M��e_1m���	n�������	n/����	�
��v�`���wn��������x���Xh�W�]�x���������������W������������W�����W����W����M�U�������������true_iff��fincases_x������������	�
��M���M�s�Y�Zorinl�����	nnatsucc�����������s�����	n��	���9����i��orinr���������M�s���[�
��M���	/�������9�9�����PInfo���declfinprod_univ_succ������_inst_1comm_monoid6n?f��	n����prod6��	�����i��has_mulmul6semigroupto_has_mul6monoidto_semigroup6comm_monoidto_monoid6	������	��i��������������?������������������(�����_a������/����/�����i���	/�/�
/�/�����M/�V���M	���/�2�J�����finuniv_succ���(�������������(�c�6������z��������������������_a���/�2�����z���������������������M������V�J�/�J���(�afinsetprod_insert6������	�o��������k��������x���m��������������������������������x�Mm�	n���������a������e_1������	�������������a��b���������	n��/������������X���W���[����������g���o���������������x���X�y�W�y���q�z�q���q���q�im����/	�����/�x���y�W���-�W�������������	�7�W������x������not_exists����������k��nen�������
�����M����������n�������(�������������nedefn������finsucc_ne_zero���c��^�x���������c�O�i����o����_a���/�@���2���J�/�[�J���c�L��prod_image6����	�o����x��H�Wy�qH_1���v�z�v���v���v�i/hxym�	n��������finsuccinj�/	�E�M�PInfo���declfinprod_univ_zero������_inst_1��f��	n��?nathas_zero	��	����	�����i���6	��to_has_one6	�	������������rfl6	���PInfo���ATTR�����ATTR�����ATTRto_additive����to_additivevalue_typemknameanonymousoptionnonestringATTRto_additive_aux����namemk_string
Strsum_univ_zero��
Strfin��declfinsum_univ_zero��������add_comm_monoid6������finsetsum6��	��has_zerozero6	add_monoidto_has_zero6	add_comm_monoidto_add_monoid6	�����������������PInfo���ATTR�����declfinsum_univ_succ������_inst_1��n?f�������	�has_addadd6add_semigroupto_has_add6add_monoidto_add_semigroup6��	�����	�������������?����finprod_univ_succ6multiplicative6multiplicativecomm_monoid6	�PInfo���ATTR����finprod_univ_succ��ATTR�������
Strsum_univ_succ��decluniquefintype_proof_1u_1α�a_inst_1unique�
x���default�	uniqueinhabited�	��a����������������#�	
	_a	���M����	�N�/����uniqueeq_default�	���#�������#�����#�m	������#�H��	����H���	��9�PInfo�	�decl��
��a������a��������	�
�PInfo��VMR�VMC�����decl�equations_eqn_1�
��a���m����
�l��a���v���r�PInfo��ATTR����EqnL�SEqnL�ATTR�
�classfintype�
decluniv_uniqueu_1α�a_inst_1�f���X��singleton��	�}�!���	��	��decidable_eq_of_subsingleton�/�subsingleton�/���a����������X���p	�����������	
�!_a�!���m�J���}�J� ������/������/�.���p���������c�!��	�������PInfo��ATTR����declemptyfintype_proof_1nempty�$�������z��������������emptyrec���PInfo�#�	decl�"�C���F�����#�PInfo�"�	prt�"VMR�"VMC�"�	�emptydecl�"equations_eqn_1m���"��y�����PInfo�*�	ATTR����*EqnL�*SEqnL�"ATTR����"classfintype�"��declfintypeuniv_emptym�����������9�����PInfo�-�ATTR����-ATTR����-declfintypecard_emptyn�q�������:���PInfo�/�
ATTR����/ATTR����/declpemptyfintype_proof_1u_1npempty�3�4���{���d��������� ��pemptyrec����PInfo�2�	decl�1�3�b��������2�3�PInfo�1�	prt�1VMR�1VMC�1�	�(decl�1equations_eqn_1�3�m��1�3��v��	�PInfo�9�	ATTR����9EqnL�9SEqnL�1ATTR����1classfintype�1��declfintypeuniv_pemptyu_1�m���o���	��������PInfo�<�ATTR����<ATTR����<declfintypecard_pemptyu_1n�	R���	���:��PInfo�?�ATTR����?ATTR����?declunitfintype�C�Afintypeof_subsingleton�unitstarpunitsubsingleton�PInfo�B�	prt�BVMR�BVMC�B�	�decl�Bequations_eqn_1m��B�!y��#�PInfo�J�	ATTR����JEqnL�JSEqnL�BATTR����Bclassfintype�B��declfintypeuniv_unitm�z�����#���(������������punitdecidable_eq��9�(�+�PInfo�M�ATTR����MATTR����Mdeclfintypecard_unitn�q��#M�:�?�PInfo�Q�ATTR����QATTR����Qdeclpunitfintypeu_1�b�R�T��Cpunitstar��H��PInfo�S�	prt�SVMR�SVMC�S�	�decl�Sequations_eqn_1�T�m�D�S�T�I�v�D�K�PInfo�X�	ATTR����XEqnL�XSEqnL�SATTR����Sclassfintype�S��declfintypeuniv_punitu_1�m�d�C�o�C�K�}�C�P� �C���C���C���C�O�\�F���P�S�PInfo�[�ATTR����[ATTR����[declfintypecard_punitu_1n�	R�C�KM�:�f�PInfo�^�ATTR����^ATTR����^declboolfintype_proof_1�f�`�cons�k
�n���N�k�has_zero�k���z�������z�����z�s������������k�s��k�o�x�l�x����z���nodup_cons�k�o�x�����������false������������m�k�o�q��������mem_singleton�k�q�oeq_false_intro��_h��boolno_confusion���o�q�����not_false_iff��������������������q�w�l�w����������q�w�������������������������α�aiff_false_intro���N�������u�not_mem_zero�k�q������������m���j���N�u�nodup_zero�k�����and_self����9�PInfo�b�	decl�a_proof_2x�k�t�k���z�k���k�H�k�y��t�k�jcases_on�!����q��������(�����(���������.�����q�o���x�0�.���y�7��(�:�E�k�q�y���:�7�mem_cons�k�q�o�x�A�4�����4_h�4���q�o�6�����6�3�q����6�\���q��\���/�k�q��0��false_or���9����o��������y�����y���y����y���@�o�y�������m�as������N	��	�m	�mem_cons_self	�k�o�x�9�PInfo�s�	decl�a�C�k�F�k��b�s�PInfo�a�	prt�aVMR�aVMC�a	�	�zero�cons�}decl�aequations_eqn_1m���a��y�����PInfo��	ATTR����EqnL�SEqnL�aATTR����aclassfintype�a��declfintypeuniv_boolm����k��has_insertinsert�k����k���k���kbooldecidable_eq�o�-�k����k���q�9����PInfo��� ATTR�����ATTR�����declunits_intfintype_proof_1xunitsintintmonoid_x��m��J��unitshas_one������has_negneg��unitshas_neg����ring�������z��������������������������decidable_eq��������������decidable_eq���-������������intunits_eq_one_or����ordcases_on����� � 
h����� ������� ����� ������������� � �����singleton����� � � ����������� !� #�A�B�����$���$��e_2���$���$��e_3m������������� 8/	�����$�����/� 8����� � *����� ��� !� '��������������� !chas_insert�����$���$��e_2� 2�$���$��e_3� 5� 6������� f/	� ?�$�����/� f������y����� � !�insert_empty_eq_singleton�������has_insert_eq_insert������� !�� � `� #�*��������� !�A� � ��� � "����� "� ������ "� ��mem_singleton�������� ����f������ ��or_true� �9h��� � � ������������� ��� �������� !� �� � �� *� �� P��� � *� ��� �� `� �� ������ !�A� ����� ���� ���� �� ��� �� �� ����� ���true_or� ��9�PInfo���"	decl���C���F��� ��
�PInfo���"	prt��nspace��VMR��VMC��"�"	��one��intdecidable_eq����decidable_eq_main����singleton��intneg������ringto_monoid��inv'
���������ndinsertdecl��equations_eqn_1m� ����!y� ��!�PInfo���"	ATTR�����EqnL��SEqnL��ATTR�����classfintype����decladditivefintype���a_inst_1�c�badditive��aid�c�PInfo���%	prt��VMR��VMC���%	a�decl��equations_eqn_1���a�m�!����!��a�v�!�!�PInfo���%	ATTR�����EqnL��SEqnL��ATTR�����classfintype����declmultiplicativefintype���a_inst_1�c�bmultiplicative�!�PInfo���'	prt��VMR��VMC���'	���decl��equations_eqn_1���a�m�!����!��a�v�!�!!�PInfo���'	ATTR�����EqnL��SEqnL��ATTR�����classfintype����declfintypecard_units_intn�q���!bit0?HM�:�!)�PInfo���)ATTR�����ATTR�����declfintypecard_booln�q�k���!.�:�!2�PInfo���+ATTR�����ATTR�����declfinsetinsert_none_proof_1���as�d��option�c�!8�T�!8�	E��a���!6�-�!G����{�!8���!8���!8�!=�!E�!9�!Emultisetnodup_cons�!8�!=�!E�	/�!R�!T���!R�������!R�����!R�������!Q�����!Q���@�����!h�!i�@�������m�!7	�!A	�!<	�!k��!Q�!z�H�!8�!B�!=�!D�t�y�t�e_1���
����	��/�!y�!j� ����x�!x�x���@���!x�!p�������!o�!o���!o�!w�����!w_h�!w��no_confusion���!A�!<��!���and_false�!o��!k��α�a����a��exists_false���9�h�!8�!B�!Dab	optionsomeinj�
1�PInfo���-decl�����a���!6�d�!8��a���!6���!8�!F����PInfo���-VMR��_lambda_1VMR��VMC���-valVMC��	�-������6�}decl��equations_eqn_1���a���!6�m�!�����!���a���!6�v�!��!��PInfo���-ATTR�����EqnL��SEqnL��declfinsetmem_insert_none���as�!6o�!8���{�!q�d�!q��!q�!�	a	H�I�!7optionhas_mem�$��a���!6���!8optioncases_on	���!q���{�"�d�"��"�!�	�����v�!7/�"/�-/�����!��!v�"��	���"
�!��"iff_of_true�"-�"1multisetmem_cons_self�!q�!v�T	�!q�!s�!na	h�"/��dcases_on�"�!</t_1�"���m�!7��!<�H_1�m�!7��!A�H_2heq�R�!7��"�/�!<��m�"P�"U	�����!A/���m�"�"f�"B�!�����"O���"D�"�	�"F�"G�"F�v�"D�"F�B��!A�	�"F�v�"�"fheqrefl�""�"B��	�����"���"���"�!��!:�"�!��T�"�!���	�����"#�"f�"%�ztrans�"����m�"�"��!��"��"��"�multisetmem_cons�"�"��!��"������"��"������"��N	�����"��"����"��"����"��/�"��"��A�"������"�_h�"��!�/���"f�"B�"��"����"��P�@���������=�"��"��P�@�"��"i�"e�"f�"���"��"��H�"�!��"��"����"��"����x�"��x�"��@���"��"����"��"�����someinj_eq/��P�S���=/����/���"����"���"��"��p�"��"��"���x��/���"o�"~����
��/����#!a�{�����"��������"%�����"��#-�#4�#-���"��"j�"��#4��"��#=��mem_def/�"f�"����#-��a�#4���C��#/forall_eq'�&�#.iffrefl�"��PInfo���1ATTR�����declfinsetsome_mem_insert_none���as�!6a���!��!t�"����a��!6����#o�������#o�����#o���#n�#n�����#l�#n���#l�
	������	�"%�	�"��#��	���"
�!��"�#���#l�#���	�!t����	�#���	�����"��	���#��"��#��"����#��"��!��"��#���#��#��#B�!��"����"���	��#��/��/�#��#X	�#��#n�#n���#n��#z���3�#n�9�PInfo�
�6decloptionfintype_proof_1u_1α�a_inst_1�ca�!8�"�"����a��c��!8���#��������#������#��
	�������#���	���"�%�#���#��#��#�������	�#���	����	���=�"�%�R�"��"��������"�r�#�����"�#��#�����#�����#����	������	�9�PInfo��9	decl����a��c�b�!8��a��c��!8�!��q���PInfo��9	prt�VMR�VMC��9	����decl�equations_eqn_1���a��c�m�$���$&��a��c�v�$�$,�PInfo��9	ATTR����EqnL�SEqnL�ATTR����classfintype���declfintypecard_optionu_1α�a_inst_1�cn�	R�!8�$,I�	TM��a��c�����!8�!>�!C�	FI�$=�$>M�$9multisetcard_cons��!8�!=�$>��n�$D�$9nI��M�$9�����$M�$R��$B_a?��nI���!q�"<��MI�
8Mn�|�$_���$M��multisetcard_map�+�+�!8�!B�	Fz�$P�PInfo��<ATTR����declsigmafintype_match_1_aux_param_0_aux_param_1α�	\β��%_inst_1��_inst_2a	fintype�,_a�!�$�,	��.�,�.�,�$|/��.�,�$���.�,�$��sigma�.�,/����./	_x/��,���&�	\�'�$x�(���)�${�,�$~sigmacases_on�.�,/�,�$��$�$|�/�$��$��$��$��$���8�$���.��$�����fst/snd�����$�$|���$��$��$��$��/mk�.�,���$���y�$��/�.��$�������$��������$������$��$��$��y�$��$��$��$������$����sigmafst�.�,���$��$�has_memmem�,�,��$�finset�,�$���,�$��4snd�.�,���$��$��$�����$��$��tmem_sigma�.�,���$��$��$����$������$�����	\������
��$�	��.	�/�$��$��$��$�����$��%����$w��$y���$�	�$�	�$�	�$�	��,	�$��%��9�PInfo�#�@	decl�#equations_eqn_1_aux_param_0_aux_param_1�&�	\�'�$x�(���)�${ab���
��$��$��/�$��#�=�>�/	�%J���%L�������%L�����$��$��$��8�$��%Z�%J�$������%a���
��$��/�%J�$��$�/�%f�$��%j�$��%j�$��/�%J�$��%f����%`�%v�$��/�$��$��%J���%h����
��$����%��%s�$��%j	�%f����%o�%����%2�%j�%���9�&�	\�'�$x�(���)�${�?�@���\�%L�^�%L�%S�PInfo�<�@	ATTR����<EqnL�<decl�"_proof_1u_1u_2�&�a�'���(���)�*	��_x�!�B�C	��5�6�5�6�%�/��5�6�%���5�6�%��-�5�6/���(�./��6���&�a�'���(���)�%��D�%��#�5�6/	�PInfo�A�@	decl�"�B�C�&�a�'���(���)�%�fintype�5�6�%��&�a�'���(���)�%���;�%��%��p���.�%������A�B�C	�PInfo�"�@	prt�"VMR�"VMC�"�@	�)�(�'�&�tsigmadecl�"equations_eqn_1�B�C�&�a�'���(���)�%���B�C�%��"�>�?	�%��&�a�'���(���)�%���A�%��%��PInfo�H�@	ATTR����HEqnL�HSEqnL�"ATTR����"class�E�"��declfintypecard_sigmau_1u_2α�aβ��_inst_1��_inst_2�%�nfintypecard�K�L�%��%��*���??�B��a�������M�a�N���O���P�%���card_sigma�B�C�p��a�./�%��*����PInfo�J�DATTR����Jdeclprodfintype_match_1_aux_param_0_aux_param_1α�	\β�$w_inst_1��_inst_2�$y_a�V�Y�Z	�$�&./�$��&2�$��&2�product�E�F/�$��$��[�	\�\�$w�]���^�&-�_�&0prodcases_on�E�F/�_�&2�$�&.�/�$��&J�$��&J�&9�/�$��$�/	fst/snd/���$�&.���$��&\�$��&\�amk�E�F���&9���$��$�����&n�������&n�����&n�����&u���prodfst�E�F���&f�$��$���$���$���fsnd�E�F���&f�&l����&n�&��tmem_product�E�F���$��&l�&f���&}���%�&�����&��&l���%2���9�PInfo�X�I	decl�Xequations_eqn_1_aux_param_0_aux_param_1�[�	\�\�$w�]���^�&-ab�
��&O�&b�/�&V�X�l�m�/	�&����&��������&������&������&����
��&x�/�&��$��$�/�$�/�$�/�&��/�&��&U����&��&��&��/�$��&U�&����&����%��&�����&��&U���%2/	��9�[�	\�\�$w�]���^�&-�n�o�\�&��^�&��&��PInfo�k�I	ATTR����kEqnL�kdecl�W_proof_1u_1u_2�[�a�\���]���^��_x�V�q�r	�%��'/�%��'�%��'�`�I�J/�(�%��[�a�\���]���^���s�'
�X�I�J/	�PInfo�p�I	decl�W�q�r�[�a�\���]���^���%��'
�[�a�\���]���^���%��'
�'	���%�	�p�q�r	�PInfo�W�I	prt�WVMR�WVMC�W�I	�^�]�\�[�tproductdecl�Wequations_eqn_1�q�r�[�a�\���]���^���%��'.�W�q�r	�'@�[�a�\���]���^���&�'.�'J�PInfo�v�I	ATTR����vEqnL�vSEqnL�WATTR����Wclassfintype�W��declfintypecard_produ_1u_2α�aβ��_inst_1��_inst_2��n�&�'
�'J��?��has_mul���q�|�a�}���~������tcard_product�z�{	���'8�PInfo�y�LATTR����ydeclfintypefintype_prod_left_match_1_aux_param_0_aux_param_1α�$wβ�	\_inst_1decidable_eq��_inst_2fintype�Q���V�Q�S	a_anonempty�S�&��image�Q�S�Q�'q�/���prodfst�Q�S�/fintypeelems�Q�S�'z	���$w���	\���'o���'t�����'v��S/���'u/�$���$���$��	�'x�'q����g�'~���'��'��	/���'����'�Exists�S�x�has_memmem�Q�S�Q�S�'q��finset�Q�S�'���Q�S�'�prodmk�Q�S���'��'�/�����'��'����'��'��������r�'��'�Exists�Q�a����'������'��'q���'��'��'��'��'����'��'�����Q��=��'�	�'��'�����'�b��x�'����'��'q���'��'��'��'��'��'���'���'~����'��'��'����Q�S�'����'����'��'��'��'~���(�'��(���'����(	���(	�'���'~��/�(��'��(���Q�S�Q�'���g�'��'�	�t���'����t���'���e_1��Q�S���'�����Q�S���'�����	�(�'��(�(�w�Q�S�'���'����x�'��(���(	�(�x�'��(���'���(G�(���(	�(����Q�S�'�x�'��x�'����'��'��(�(/�(prodexists�Q�S���(J�t���t�����e_1eq�Q�������Q�������	�'������'�������'��(�(�'�/�'��w�Q������x��'����������'��'���	�'��(/�x����'�x��(��'������(��(�exists_and_distrib_right�S��'��'���'��S����=��'������'��(��'��'��'��T�Q��'�	�c�S��'�fintypecomplete�Q�S�'��'���	�PInfo���Pdecl��equations_eqn_1_aux_param_0_aux_param_1���	\���$w���	]���������&.	��b�
��%����z�{�z�&J����&����z�{�&J	���{�z�/	���{/���(��'�/��/�&a�&d	�(��&\�����(��)���%��(����������&��(��'�������'������$�&.���$��)�$��)�&b���(��)/�
	�=��)�)
�'�����)����x�)���$�&.���$��)+�$��)+�(��)+���&x��/�)�)%�)
���z�{�&J���&J���&a�(��
�&z	�)A�)
�)E���&J���)G���)G�
V�&x���)N��)�)Z���z�{�z�&J����&��(��t���&J���t���&\������z�{���)����z�{���)+����	�)D�)+�)Y�)M�w�z�{�&J��&J���x�&J�)Q���)G�)V�x�&J�)L���&J��)��)L���)G�)K����z�{�&J���&J�x�&\���)�)�
V�)S�)A���z�{�/�)��t��t�������z�(l��z�(n��	�'������)������)�
V�)S�)�)$�w�z������x��)���������)0�&b��	�)3�
V�x����)����)��)"�����)��)����{��)"�)��'��S����=��'�����)0�)��)3�)"�)(�T�z��)'�c�{/�(����z�{�&J	�&����	\���$w���(����(������\�(��^�(��(��PInfo���PATTR�����EqnL��decl��_proof_1u_1u_2���a�������
5���%��'	_inst_3����	��/�����������'�/����������/�������*	���a�������
5���*���*��/�������/	�PInfo���Pdecl���������a�������
5���*���*�2���a�������
5���*���*�/�*�'/���*"/�*&�'������/	�PInfo���PVMR��_lambda_1VMR��VMC���Pc
VMC���P��������������decl��equations_eqn_1�������a�������
5���*���*�q������/	�*T���a�������
5���*���*��*_�PInfo���PATTR�����EqnL��SEqnL��declfintypefintype_prod_right_match_1_aux_param_0_aux_param_1α�	\β�$w_inst_1�'n_inst_2�(�b	_a�'��&��image�������&J/���&��(����	\���$w���*m���(���	���'��'�����'u��&�	�*o�&\����&��(��	����*����*��'�����)�)�)�����*��*����*~�*��������	��&��(��'�����'�����x�)+���$�&.���$��*��$��*��(��*���(�&�����)��*��*��)D�&\���&\�)��'���&����*��*��*����&\���)����)��'��&���/�*���*��*����������&\����&��(�	�t�)i�t�)ke_1�)j�)p�)o���*�����	�)D�*��*��*��)}�&\��&\���x�&\�*����)��*��x�&\�*����&\��*��*����)��*���)��&\���&\�x�)�)5�'��*�/�*��)����*��t���t�(le_1�)��(n�)��(s��	�'������'�������)��'��*��)�/�*��)���(��x��'��S����=��*��&b��	�*��'�/�x��=��)������+3�+7�(��+6�(���*��*�&\�&d	�PInfo���Tdecl��equations_eqn_1_aux_param_0_aux_param_1���$w���	\���	^���'t��	a/�
������������'z/��prodsnd�����/�'��������/	�(�����+b�)����'��'��'��'��'��'��(�	�'������+b�+y���+X�+[��+_�'��)����'�����x�'��(Z�
V�+]��/�'��+y�+��(�'z���'z���+s�'��
&��+]��	�+��+��+����'z���+����+��
�+]���+���+��+����������'z/���+_�'��t���'z���t�(-���(/�(.�(4�(0��	�(�'��+��+��(B�'z��'z���x�'z�+����+��+��x�'z�+����'z��+��+����+��+���(V�'z���'z�x�'��(
�
�+��+��(e�/�+��t��t�����(m�(l�(r�(n��	�'������'�������'��+��'��
�+��+��+x�(���)��x��'��S����=��'��'�	�'��)!�x��=��+�	�����,�,�)��,	�)���+x�(��'z	�'��/���$w���	\���	^���'t��	��/�\�+b�^�+b�+l�PInfo���TATTR�����EqnL��decl��_proof_1u_1u_2���a�������2���*_inst_3��������������*/���������/�*(���a�������,A���*���,B���������/	�PInfo���Tdecl���������a�������,A���*���,B����a�������,A���*���,B��,C�'�!�,G/�*K������/	�PInfo���TVMR��_lambda_1VMR��VMC���T��
VMC���T��������������decl��equations_eqn_1�������a�������,A���*���,B�7������/	�,s���a�������,A���*���,B�F�,~�PInfo���TATTR�����EqnL��SEqnL��decluliftfintypeu_1u_2α�a_inst_1�c�%����������a���cfintypeof_equiv�������,���symm�����,�equivulift�����PInfo���X	prt��VMR��VMC��
�X	������ulift��symm��decl��equations_eqn_1�������a���c�%��,��������,����a���c�&�,��,��PInfo���X	ATTR�����EqnL��SEqnL��ATTR�����classfintype����declfintypecard_uliftu_1u_2α�a_inst_1�cn�&�,��,��	T���a���cfintypeof_equiv_card�������,��,��PInfo���[ATTR�����declsumfintypeuvα��β��_inst_1fintype��_inst_2fintype��fintype����������	���,����,����,����,�fintypeof_equiv���������,��!���kb�kcond������ulift����/ulift������sigmafintype���k�,���b�k�u�����k�,����k�,��,���,��uliftfintype����������/	��trans���������,�sum�����,��,�	�,���symm�������,��,�equivsum_equiv_sigma_bool���,��,�equivsum_congr���������,��,�	equivulift����equivulift����	
�PInfo���_	prt��VMR��_lambda_1VMR��VMC�
�b���k�P_freshs���P_freshs��	����VMC�� �_	����������_c_1��sum_congr_main��sum_equiv_sigma_bool������a�"��decl��equations_eqn_1�������,����,����,����,�������,�������	�-���,����,����,����,�����,��-�PInfo��_	ATTR����EqnL�SEqnL��ATTR�����class������declfintypecard_sumu_1u_2α�aβ��_inst_1��_inst_2��n�&����	������	I���q��a������������-4n�-*���������-)�!���k���k�������,�/�����������k�-G�����k�u�����k�%����k�-A�,���-D��������,�/	����������-H������,��-D	�-)������-i�-H����-f�-h����������-f�-h	�,��
����	�-3�����-4�-�����%��-)�-/_a�-���n�&�-'/�-+/	I����n�-��-����-4�-�����	���-�n�&�-H�-a�-3�����-��-���-�_a?��n�-��-:�-��-=���k�-A�,���-D/�-K�-������k�-N���k�%����k�-A�,���-D��-Y/	�,���-c�-��-e�-B�-E�-��-l�-��-��-o�-B�-E�-t�-B�-E/�,�/�-{�-����-����-��-�fintypeof_equiv_card�������-H�-)�-a�-~���-��������-������-��p�����-�nG��?add_monoidto_add_semigroup?add_comm_monoidto_add_monoid?�B���q�-3�-��"?�"?e_1���$?�$?e_2����?��n��
0	��?�$?���/n�-��.���-��-M�*�ka�k�-��.
x�k�&�-F�-_�ofinsetsum�k?�B� �k�q�.1�.�..�.7���k����o�.9�.1�.<�..�.7���S�k�&�-��.*�.E�J���k�-G���*�k�-_finsetsum_congr�k?���.C�S�k�.0�.1�B��������.9�.@�����k���k���o�.9�.a���.b����� b�k��$�k�$�ke_2���$��$�e_3�����������.y/	���k�$���/�.y���o�oy�k�o���.9� ��k���q� ��k���o�.9�+�kH��.Cz�&�-@�-��-��-��-��-�finsetsum_insert�k?�.9�o�.1�B���-��x�.9���"��.�����not_congr�.����"��.������ ��k�q�o����tt_eq_ff_eq_false����chas_add?�$?�$?e_2���$?�$?e_3���.?G���.�/	�.�$??�/�.��.	�&�-@�o�-f�-h�-N���k�%��.I�o�-Y	�,������/�&�-f������-?�.��q�-?�%��.��-fboolcond_tt���-?�-f�-h���q�-?�q�-?e_1����-?�r�%�	����-?�q�-?�=�//n�&�	�&�/��/		z�&�/�/	����-?	�.��-f�/�.��������.;�q���.;�&�-h�/�-@�q�-f�-h�/	�.��q�.��.��-h�;cond_ff���-?�-f�-h�q�/K�.1�q�/\finsetsum_singleton�k?�q�.1�B�/>�/O�-h�/Z�/T������	�-3�-3z�-3�nG�.add_right_cancel_semigroupto_add_semigroup?ordered_cancel_comm_monoidto_add_right_cancel_semigroup?ordered_semiringto_ordered_cancel_comm_monoid?�#ordered_semiring���q�/��-�add_right_inj?�/��q������-����f?���9�PInfo��fATTR����declfintypecard_le_of_injective�����a����_inst_1��_inst_2��f��hf�>has_lele?��has_le������a�����K���L���M���N�/�finsetcard_le_card_of_inj_on6�/��/������K���%�/	_x�_x�C� finsetmem_univ6�/��_x�_x�/�_x�_x����h�������/	�PInfo�J�jdeclfintypecard_eq_one_iff���a_inst_1�c���	UM�!ixy	����a�_�c���/����	U�?�/������/��/��M_a?����n�
8M���`	�a�����/��/����/��?��?Mfintypecard_unit���/����
�����/������/��0����/�_a�������/��?�/����/����/��0	��/��0	fintypecard_eq��#���0	�/�_x�0	_a�
��
6�����
��i�
��0.�!��`/�a��m�	�0.���05��/�04�������������/�����/��symm��/��y/��injective�����0<�0>��0B��0E���subsingletonelim�� ����������������0e�0Y_x�/�_a�/����`�a/��p�P�0x�
��H��`�a�0w���
��0_���0_�O��_x��_x�	_x��trans��r��q��	�0��	(�	��_x��0]�0��0��PInfo�^�odeclfintypecard_eq_zero_iff���a_inst_1�c���	U�������a�x�c���0��0�h�0�a	
e�
��
emptyelim���0^�H���0a/��AnnotcheckpointAnnothaveclassicalchoice8�0��
n�,���
��0��0 ��	�����0��������0������0�n�������.&�,�������/��0����/����9h�0�
e�
6��
���0����������0������0��0����0����,����fintypecard_congr��	���0�����z���0��9Annot�~Annot��O	��a	falseelim����a��emptyelima	�'�������1/���1��a���0�m���1#�1!�PInfo�w�udeclfintypecard_pos_iff���a_inst_1�c���	����	T���a���c���1;�1=h�1;classicalby_contradiction�	h₁��1D
��0�
lt_irrefl?partial_orderto_preorder?ordered_comm_monoidto_partial_order?ordered_cancel_comm_monoidto_ordered_comm_monoid?�/������1:�"�1:����1T_a?���1:�7/�1:���1U��	Annot�~Annot��-�0����fintypecard_eq_zero_iff	a�)/_x�1=_a�1D����,B�1U�	��gt?�	��1T��natpos_of_ne_zero�1Tmtn�1T���/���
�1��1��1n/h�1��PInfo���zdeclfintypecard_le_one_iff���a_inst_1�c���/��	TMab	�#���a���c	n?�	T
hn���
8
_a?��cases_on��?_a���1Z���/����M�������N��ha�0��1T���/��1ZM�������m����1����1��1�h�1�a��'�1��
n�	R���������1n������1�	_x�1���?_x?�/�M���1�natle_succ��n_1?�1���?��n���1����/��1�M����������hanM�1Z�1����1����1��1�h�1�a�b�_a����`��a�
�m����
�`�
�a��m������
�2�2	�`�
h_1�2
���2/���2�2�����2�2�	
�/_a����m�
��/�2 /���2/���2�2�����2�21�2_a����2 	/�27���2�v��
n�	R��M�2fintypecard_eq_one_iff���M�2O_x�1��1�M�1�le_refl?�1QM��?��hanF
?Annot��
HAnnot���!+�2n�2pJ�2n
LAnnot���1��1����2{���1��1�h�1�absurd�/����!.M�����������/��	R��M�2���2�_a?���/��2OM�1����2��2���2��2�of_as_true��2�notdecidable�2���decidable_lt��M�9h�1��1�_x?�2��?M�0fintypecard_le_of_injective����#_x��_x�_x�_xm����
��2���Annot�~Annot��:�PInfo����declfintypeexists_ne_of_one_lt_card���a_inst_1�ch�	�M�	Ta	�Pb��/��a���c���2���	_a�Px���/����/��/���������!��2������2���`/h_1�2���_a�������1�	�������2����
�x��2��2�classicalnot_forall�����2����2���������N���2��3�������2����`�h_1�3���1�����2��
�����/��
��/��3&hba�3*���
���
�2���	of_eq_true�3"	����3:���	��������3:�3?���3:not_eq_of_eq_false�3>���3>��	���3J���	�3K��3>�3O���3>�3O_h1�3>�	(��_h2�3O�3V�eq_of_heq���3O�3K�"�
a'�e_0�2�	
�
�	���
��$�ca'�oe_1�m�t�����m��	���3o�$�
����c���m�o�	
�t	���t�3n�3p���3p�����3j�	���	(�
��		�v�
	���3K����3*�36��3�
����2��2��3
���2��1��3��/��,M�-�3����2�fintypecard_le_one_iff	not_le_of_gt?�1Q�,M�PInfo����declfintypeinjective_iff_surjective���a_inst_1�cf�	����		��		��a���c���3�
�f�	��3��3�//
���3��3��1�hsurj�3���injective_of_has_left_inverse//	���/�finv�4��left_inverse����surj_inv//	��left_inverse_of_surjective_of_right_inverse//�4	�4��injective_surj_inv//	��right_inverse_surj_inv//	Annot�~Annot�f�3�hinj�3�x/
h₁�m���������������1�	����

h₂���4.�����������1���
exists_of_bex�x��/��������N���
���4.�����������������Y�2�������4E���4E���D/�����4P�4R�Y	Annot�~Annot����?_x�?�����4@�	(�?�4@������Annot�~Annot��teq_of_subset_of_card_le��46���:�/�46�1�_x?�/��	M����	���	�46��4��4��tcard_image_of_injective���43	���2f�4��PInfo����declfintypeinjective_iff_bijective���a_inst_1�cf�3��3���		��a�
�c��3����4��������4������4����3��3������3��3���3��3�fintypeinjective_iff_surjective	�4��3����4����3��3��3��4����3��3��4���		���3��3��4��3��3����3���4��3��
�3���4����3�3��9�PInfo�	��declfintypesurjective_iff_bijective���a_inst_1�cf�3��4��4���a��c��3����4��������4������4��4������3��3��4��4��3��4��4��9�PInfo���declfintypeinjective_iff_surjective_of_equiv�����a����_inst_1��f�e�����>����a������������
����3�//functioncomp7//��8777��7/��7/��symm7/�3��5'
������hinj����� ��comp7������������	�5����5�5���5���5!��	�fa������e_1������7�����	�\�5I����5M�5Ix�������������5�5���5���5!��/���x����5b�59���5�5���5���5!�����5xf�5M� �5Ne_1�5Rg���
�"��
�e_2�m���������
�����5.�����5�/	������5��"�5���
��
��/�5��58�58���has_coe_to_funF8777�53�56	�58�5H�5��equations_eqn_17����5F�'7����58�5��w7�x�����5i�5��5z����apply_symm_apply7������surjective_comp7����58�5H��surjective7��	�
�3����5H�3����5H��injective_comp7����5F��injective7���5Ehsurj������5I���5M��5Ne_1�5R�5X�X�5I�5��,7����58�5H��injective7��	�-�5��5��*7����5F��surjective7���5EAnnot�~Annot��4�/	�5'�PInfo���decllistsubtypefintype���a_inst_1��l�B�b��	x	�I��a�5���6�B���6<���6<�����csubtypedecidable_eq/�7/����listattach	�:mem_attach	�PInfo�4��	prt�4nspace�3VMR�4VMC�4��	�6�5���attach�9�@decl�4equations_eqn_1���a�5���6�B�m�6=�4�	�6T��a�5���6�B�v�6=�6\�PInfo�?��	ATTR����?EqnL�?SEqnL�4ATTR����4classfintype�4��declmultisetsubtypefintype���a_inst_1��s���b�6:x	����a�D���E���0�6h���6h�������6D�F/����multisetattach	�Gmem_attach	�PInfo�C��	prt�Cnspace�BVMR�CVMC�C��	�E�D��attach�9�3decl�Cequations_eqn_1���a�D���E���m�6i�C�	�6��a�D���E���v�6i�6��PInfo�L��	ATTR����LEqnL�LSEqnL�CATTR����Cclassfintype�C��declfinsetsubtypefintype���as�!6�b��x�#n��a�Q�!6��6�finsetattach�Smem_attach	�PInfo�P��	prt�Pnspace�OVMR�PVMC�P��	�Q��attachdecl�Pequations_eqn_1���a�Q�!6�m�6��P��6���a�Q�!6�v�6��6��PInfo�X��	ATTR����XEqnL�XSEqnL�PATTR����Pclassfintype�P��declfinset_coefintype���as�!6�b�Q����a�\�!6�6�
�PInfo�[��	prt�[nspace�ZVMR�[VMC�[��	�\��Pdecl�[equations_eqn_1���a�\�!6�m�6��[��6���a�\�!6�v�6��6��PInfo�^��	ATTR����^EqnL�^SEqnL�[ATTR����[classfintype�[��declfintypecard_coe���as�!6n�	R�6��6��	N��a�b�!6�tcard_attach�PInfo�a��ATTR����adeclpliftfintype_match_1p��_inst_1�8_aplift���6�	�z�6����6���	�6�h	� �6�pliftup�k�	���z�6����6��g���h�8�i�6��lcases_on	�i�6����6��6����6��6�	�6��k� �6�/�6�/�k����z�6����6�down	���6��6��7���7�������7�����7m�6��6��6��-��������7�7
�6��7�7�A� .�6��6��$�6��$�z�6���$�z�6��e_3m�z�6������z�6��	�$�70�pm�z�6�������6��
�z�78��/�7=�����7/�70/	�6��6��7�7dif_pos��	�7�6��6��7��7 �7� ��6��7�6���7�6����f�6��6��9�PInfo�f��	decl�fequations_eqn_1�g���h�8h�
��6��6�	�6��f	�7y���7{�������7{�����7{m�6��7y�7x�-	���	�����7��7z� �6��7��7��A� .�6��6��$�6��$�7�$�7&�pm�7(�7.�7*	�$�7*�pm�70�����73�74��/�7������7)�7*/	�6��7y�6��7��7W	�7��6��6��6���7��7�� ��6��7��7y��7��7y���f�6��7y�9�g���h�8�t�\�7{�^�7{�7��PInfo�s��	ATTR����sEqnL�sdecl�e_proof_1�g���h�8_x�6��6��g���h�8�v�6��7�PInfo�u��	decl�e�g���h�8�C�6��g���h�8�F�6��6��z�6��k�7��7y�k����6����6��u�PInfo�e��	prt�eVMR�eVMC�e	��	�h�g��	�(�decl�eequations_eqn_1�g���h�8m�7��e�8�g���h�8y�7��8�PInfo�x��	ATTR����xEqnL�xSEqnL�eATTR����eclassfintype�e��declPropfintype_proof_1�j���m�����8�����N���u�����8�������8�����8�����8 ��������8�������8�8�8����8�8,�������8���8)�����8)�������8(�����8(����������8(�8?����������8?�����8?true_ne_false���8+�����8+�����8V����8&���8�8�8����8+�8^�81���8���8[�����8[�������8Z����8Z�����������8]����8]��������9�PInfo�|��	decl�{_proof_2a������8#�z�������H���8�8�classicalcases�8����8����8��������8������8��8'�8����8��8��?�����8�8���8����������8�9���8����8��������8������8��0���8����������8Y�8�0�8��8Y�8�8���8��8��8����8�8���8��8��H�������8�A�8������8�������8��������8���8��8�eq_iff_iff������8��8�false_iff����8���not_true�8������8��8������8��8����8���8��8��8E����8��8��8�����8����3���r�9�PInfo�~��	decl�{�C���F���8��|�~�PInfo�{��	prt�{nspace�zVMR�{VMC�{	��	�|�}�}decl�{equations_eqn_1m�9�{�9y�9�9�PInfo����	ATTR�����EqnL��SEqnL�{ATTR����{classfintype�{��declset_fintype_proof_1u_1α�a_inst_1�cs��_inst_2���/���{�filter��/
_x/�rAnnotinfix_fn��/�decidable_mem����&"����	���a���c�����������96�������96������//�����9$�
�����/Annot������9*�/��������9&�
�//�������/�95�/���/���95���94�94�����92�94���{�9%�9'��/�9J���s�94�94�9j�����9'�9k��9i�9p�mem_filter��/�9'�9/��������������/�94�94���94��9k�94���94�94�94�9���9_���3�94��R�����$�9�PInfo����decl�������a���c���������b�����a���c�����������v�94�9$
���94Annot�����9*/	��/�q����	�PInfo����VMR��VMC��
�����������filter�Pdecl��equations_eqn_1�����a���c���������m�9�����	�9����a���c���������v�9��9��PInfo����ATTR�����EqnL��SEqnL��declpifintype_proof_1u_1u_2α�aβ��_inst_1��_inst_2�8_inst_3a����fa/H�������%�������/��D�%��9��%��9��pi������8���������a��%������a�����������8���9����9��-�9�a�h�/���D�
�D�
�D9�%��D��finsetmem_pi�����8�9����9�a�ha�/��/��D��9�PInfo����	decl��_proof_2�������a��������f��	���N�����%������{�(�Xf��a/_x�9�8f�:!a/������:-���a�����������:rfl����:!�:-�PInfo����	decl��_proof_3�������a��������f���%����:+�:%�:=���a�������������:4���:=�PInfo����	decl���������a�����������8���9��%������a�����������8���9��-:���9��%��9��9�/����/����3�(��/�%���������/	�����9������9�������4x/����������/�8������/	������/	�PInfo����	prt��VMR��_lambda_1VMR��_lambda_2VMR��VMC��������VMC����������VMC��
��	���������������tpi��decl��equations_eqn_1�������a�����������8���9��%��:J������/	�:|���a�����������8���9��&�:J�:��PInfo����	ATTR�����EqnL��SEqnL��ATTR�����classfintype����declfintypecard_pi�u_2��a�_inst_1��_inst_2�8f�9�n�&���:���	�:V��/���prod/?�#comm_monoid�(a/��������a�����������8���9�	f'�%��9��:\�:���&�<�:���8�9�����&�9��:��?�:����������
fintypecard_congr����<�9��:��:e�<�9�f�<a�ha�W�F8f�9�a�����_x�<�:4a����a�H�:�������������:�������/�8_x�9��:4�:��:��:�Annot�
finsetcard_pi���9��8��a�a��%����Annot��PInfo����ATTR�����declfintypecard_fun�����a����_inst_1��_inst_2�8_inst_3�
n�&�;�:��//	�:V��/has_powpow??��has_pow� ����a�����������8���
���;n�:���/��;�����;�;��;
_a?��n�&���:����9����	�;������;,���;�;fintypecard_pi6/�;	�:V�;���;n�;monoidhas_pow?��?�:�� ���(�;�����;�;K��;_a?��n�:�����(�;,�;/���;�;Ifinsetprod_const/?�(�:�� ���;Kn�;�;H�;�����;K�;h��;�;A�#monoid� �;H_a?��n�;F��	���;,�;/���;K�;fnatpow_eq_pow� �;Hz�;f�PInfo����ATTR�����decld_arrayfintypeu_1n?�
��a_inst_1n���b���bd_array��	��?���;����;�fintypeof_equiv���;�i�M����M���M�U���M���q��/���M����symm�n��;��;�equivd_array_equiv_fin�	
�PInfo����	prt��VMR��VMC����	������?equivd_array_equiv_fin�����k����decl��equations_eqn_1����?���;����;��m�;�����	�;���?���;����;��v�;��;��PInfo����	ATTR�����EqnL��SEqnL��ATTR�����classfintype����declarrayfintypeu_1n?α�a_inst_1�c�barray�		�	?�	�a�	�c�;�_x�M	���M�PInfo�	��	prt�	VMR�	_lambda_1VMR�	VMC�	��	���P_freshl���VMC�	��	�	�	�	?�	��decl�	equations_eqn_1�	�	?�	�a�	�c�m�;��	�		�;��	?�	�a�	�c�v�;��;��PInfo�	��	ATTR����	EqnL�	SEqnL�	ATTR����	classfintype�	��declvectorfintypeu_1α�a_inst_1�cn?�bvector�		�	�a�	�c�	?�;��;���
��;��
���
��j���
�������	���
�	��symm���;��;�equivvector_equiv_fin�	
�PInfo�	��	prt�	VMR�	_lambda_1VMR�	VMC�	��	���P_freshl���VMC�	��	�	?�	�	��vector_equiv_fin���	���k����decl�	equations_eqn_1�	�	�a�	�c�	?�m�;��	�		�;��	�a�	�c�	?�v�;��<�PInfo�	��	ATTR����	EqnL�	SEqnL�	ATTR����	classfintype�	��declcard_vector���a_inst_1�cn?n�	R�;��<�;�
8��a�	!�c�	"?���<n�	R�;��;��<�����<�<��<�;�_a?��n�	R�;��<	�;�,���</���<�<fintypeof_equiv_card�;��;��;��;����<�������<�����<n�<�<���.&�<�<���<�;����
������;��;��<�s�<���
�	�j�;�chas_pow??�$?�$?e_2���$?�$?e_3���.��;���<b/	�.��<b�;�
8�
8z�
8�s�}�<�<z�<��<H���/��<�9�PInfo�	 ��ATTR����	 declquotientfintype_proof_1���assetoidx��_x��	�P���m��/��/��a�	-�<��	/�<�quotientinduction_on	�<�x	�����<��<�����	��	�PInfo�	,��	decl�	+���a_inst_1�c�	-�<�_inst_2decidable_rel	has_equivequiv	setoid_has_equiv	�b�<���a�	4�c�	-�<��	5�<�fintypeof_surjective�<�	���<����<�	quotientdecidable_eq��9��<��	,��PInfo�	+��	prt�	+VMR�	+VMC�	+
��	�	5�	-�	4��\�	=��decl�	+equations_eqn_1���a�	4�c�	-�<��	5�<��m�<��	+�	�<���a�	4�c�	-�<��	5�<��v�<��<��PInfo�	?��	ATTR����	?EqnL�	?SEqnL�	+ATTR����	+classfintype�	+��declfinsetfintype_proof_1���a_inst_1�cx�e�{�}�d�}��}�powerset	����a�	D�c�	E�e�-�=�Efinsetmem_powerset	���:	�PInfo�	C��	decl�	B���a�	D�c�b�e��a�	D�c��e�<��q�	C�	�PInfo�	B��	prt�	BVMR�	BVMC�	B��	�	D��tpowersetdecl�	Bequations_eqn_1���a�	D�c�m�=�	B��=��a�	D�c�v�=�=#�PInfo�	K��	ATTR����	KEqnL�	KSEqnL�	BATTR����	Bclassfintype�	B��declsubtypefintype���a_inst_1�cp�y_inst_2���b��x��a�	O�c�	P�y�	Q���9��=,�&
	�PInfo�	N��	prt�	NVMR�	NVMC�	N��	�	Q�	P�	O���decl�	Nequations_eqn_1���a�	O�c�	P�y�	Q���m�=.�	N�	�=4��a�	O�c�	P�y�	Q���v�=.�=>�PInfo�	T��	ATTR����	TEqnL�	TSEqnL�	NATTR����	Nclassfintype�	N��declfintypecard_subtype_le���a_inst_1�cp�y_inst_2���/��	R�=-�=<�=,�&
�,��a�	X�c�	Y�y�	Z�����=P�/����9�
�����	R/�f���Annot�����9��=X��/����9G�q�,�����=P�=i��=K���=,�=f�9��	R�f/�����9�_a?���/��	R���=p�=:/�=p�9��1T�1��1T���=P�=g���=,�=f�=v�tcard_le_of_subset�=f�q�<�=f�PInfo�	W��declfintypecard_subtype_lt���a_inst_1�cp�y_inst_2��xhx��	��	R�-�=V�=:�/�=V�&"�1Z��a�	_�c�	`�y�	a���	b�	c�=����=��	��	�9@
������	R��f��Annot������9E�=��������������1Z�����=��=���=�����=V�=��9��/�	R��f����=__a?���	��	R�i�=��=:���=��9G�1��	��1����=��=����=V�=��=�finsetcard_lt_card��=����	/�?���A��=�����=����=��4��=��-������D��9$�
������������	R��f��Annot������9*��>���������
��Y������>�3
�a��>��>����=�-���!�9$�
������	R��f��Annot������9*��>'�������������������>:�����>:�������>9�����>9������>���������>#�-�=�������>#����/���>L�s�����>W���>#���>X�>W�-�9@�&"���>\�A�����$��$�e_2�1��$��$�e_3�m�d����d����{��>k���>p/	����$�>k���/�>p���v��=��>a�0����=��>_����=�p�����=�� ��)��x��9A�=V�����9A��setmem_def�/���>_�=_���	j��	j��e_1���(l_inst_3���	s��	o�e_3�>j���,��	j�,�	m���
���m�d�c�9$�c��/�>��>���c����	j�>����o���>k	�	o�>k�	p�m�d�
��>��>��>���^�>���v�>k�9$���>��,��	j�,���
���^�,�	�/�=��>��=������v�����filter_congr_decidable����>��&"��-�>��>\�9u��&"�����>#���>U���������������>X���!�����>���>H�>I��>H�����9�PInfo�	^��declpsigmafintypeu_1u_2α�aβ��_inst_1��_inst_2�%��%�psigma�	t�	u�p�	v�a�	w���	x���	y�%��-:�?N�%��p�%��p�&
��symm�!�#�%�?N�?Uequivpsigma_equiv_sigma� �"�p
�PInfo�	s��	prt�	sVMR�	sVMC�	s��	�	y�	x�	w�	v��psigma_equiv_sigma���"��decl�	sequations_eqn_1�	t�	u�	v�a�	w���	x���	y�%��%��?O�	s�	t�	u	�?b�	v�a�	w���	x���	y�%��&�?O�?l�PInfo�	���	ATTR����	�EqnL�	�SEqnL�	sATTR����	sclassfintype�	s��declpsigmafintype_prop_left_match_1_aux_param_0��	\h_a�	z�	�	a	�
&�?z�px8psigmamk�)/��	psigmasnd�)�p�	����	��?y�	��	��?}�	�cases_on�)�p�	��?�
&�?z/���	����?���8�?�/��fstsnd�����
&�?z��8�	�/�?���y/�?���8�?�
�8Annot���?�rfl�)�?��?��PInfo�	��	decl�	�equations_eqn_1_aux_param_0�	����	��?y�	�_x	_x�
��?��?��?��?��?��	��	�/	�?��?��?��?��	����	��?y�	��	�	�	��\�?��^�?��?��PInfo�	��	ATTR����	�EqnL�	�decl�	�_proof_1u_1�	����	���a�	�_x���m8�	��	��p�	�8�	��1/��	�?��	����	��?��	��	�����8�?��PInfo�	��	decl�	�_proof_2�	��	����	��?��	�_x�	z�1	�?|�m�?��p�?��?��	����	��?��	��	��?��	��0	�PInfo�	��	decl�	�_proof_3�	��	����	��?��	��7�x�?����	����	��?��	��7��	��?��	zfst�1�p�PInfo�	��	decl�	��	��	����	��?�_inst_1a�;�_inst_2��	�b�@�	����	��?��	��@ �	��@!�;�@"�	��;��?�/�������1�1���@+�	����?���8�?�/���	��	�/�	��	�/�	��6���@+��d�@+� �@+�	��	�/�PInfo�	��	prt�	�VMR�	�_lambda_1VMR�	�_lambda_2VMR�	�VMC�	��&�	�VMC�	��	c
VMC�	��	�	��	��	��	���	�(�	��	���decl�	�equations_eqn_1�	��	����	��?��	��@ �	��@!�m�@"�	��	�	�@T�	����	��?��	��@ �	��@!�v�@"�@^�PInfo�	��	ATTR����	�EqnL�	�SEqnL�	�ATTR����	�classfintype�	���declpsigmafintype_prop_right_match_1_aux_param_0α�	\β��_a�1�	�a���	z�6	�?|�	��	\�	����	��@n�D�6�6	�?|�	��@k	�?|�@o�p�E	�F�b�6�@o/���	��6/���PInfo�	��	decl�	�equations_eqn_1_aux_param_0�	��	\�	���xy����	��@{�	��?	�Cmk�?�p�@��p�	��	\�	����	��	�����?�@{���?�@{�@��PInfo�	��	ATTR����	�EqnL�	�decl�	�_match_2_aux_param_0�	��	\�	���_a�@o�@m�@y�	��	\�	����	��@��	��	��G	�?|�	��@q�@k�p�	�	�	��@�@k/���@�/���PInfo�	��	decl�	�equations_eqn_1_aux_param_0�	��	\�	���xy���@��@��	��	�	�@��@��	��	\�	����	��	����@��@��@��@��@��PInfo�	��	ATTR����	�EqnL�	�decl�	�_match_3_aux_param_0�	��	\�	���_a�@n�
&�@y_x�@q�@�_x�@y�@��	��	\�	����	��@n�D�	�	�?|�	��@y�
&�@��	��@{�@�/�	��@��@�/�E	�F���
&�@��	��@��@��/�	��@��@��/�@�
��Annot���A	�?��@��A	�PInfo�	��	decl�	�equations_eqn_1_aux_param_0�	��	\�	���xy���
��@��@��@��@��@��	��	�	�@��?��@��A�	��	\�	����	��	����\�A�^�A�A�PInfo�	��	ATTR����	�EqnL�	�decl�	�_match_4_aux_param_0�	��	\�	���_a�@��
&�@q�@��@��	��	\�	����	��@��	��	�	�?|�	��@q�
&�@{�@��@��	�	�	����
&�@��A�@��@��A�AG�?��@��AG�PInfo�	��	decl�	�equations_eqn_1_aux_param_0�	��	\�	���xy���
��A:�@��@��@��@��	��	�	�@��?��@{�AU�	��	\�	����	��	����\�AW�^�AW�A\�PInfo�	��	ATTR����	�EqnL�	�decl�	�_proof_1u_1�	��a�	���_x�6��@m�m�6:�?|�	��	z�	�	�?|�	��R	�	��An�	��R	�	��a�	����	��Am�	��R	�PInfo�	��	decl�	�_proof_2�	��	��a�	���_x�Ap�@m�m�Ar�A|�Aw�	��a�	����	��A��	��R	�PInfo�	��	decl�	��	��	��a�	���_inst_1��_inst_2a	���b�Ap�p�	��a�	����	����	��A��;��A����p�=;�p�&
�@/�A��A��	��A��Ax/�	��A��As/�	��	�	�	��	�	
�PInfo�	��	prt�	�VMR�	�_lambda_1VMR�	�_lambda_2VMR�	�VMC�	���	�VMC�	��1�	�VMC�	��	�	��	��	��	��	��	��	N��decl�	�equations_eqn_1�	��	��a�	����	����	��A��m�A��	��	�	�A��	��a�	����	����	��A��v�A��A��PInfo�	��	ATTR����	�EqnL�	�SEqnL�	�ATTR����	�classfintype�	���declpsigmafintype_prop_prop_match_1��h���@m_a�	z	�?|���A��p�z�A����A��-�A��A����A����A����A����A�/��psigmadecidable_eq��8��������subsingleton_prop�a��������D�A��	�A��A��	��p�qfst�p�qsnd�p�	����	����	��A��	��A��	��p�	��A����A��z�A����A��-�A��B���A����A����A����A���8�A���y�������A���A���	����������A��	�A��B5�B/���B/��	�B/��	�	��	��������B*�z�B*���B*�B��8�-�B*�BU���B*���B*���B*���A���y�A��a���������A���A���	��������	��A��	�A��Bp�BZ�B��8�B��8���B��������B������B������B����
���B��"O�8�8�B��B����B�m�B*�B\�B��B��B��B]� �B*�B��B��A� .�B*�BU�$�Bd�$�A���Bfe_2m�A���	����$�z�A���	����$�z�A��
�	��
�e_3m�z�A���	������z�A���	��������B��B����B�/	���B��$�B����/�B��BW�B\�B\y�B*�B\�B��B�� ��B*�B}�B���B��B�� ��B*�B��B\�	�inj_eq��8�B��B����B�����B����/��B�����"O�X���X/�B��-���X�C���"��C���X�C���8��X�C�3�X���B��C�B�����h��x	��"O	��	eq_mpr_heq	�C�X�C!�B���9
�PInfo�	��		decl�	�equations_eqn_1�	����	����	��A�_x	_x�
��B"�BF�BO�	�/	�CS���CU�������CU�����CU�����Cb���
�/�BI�"O�����BI�BM���Cbm�A��CS�BN�Co�Cb�CT� �A��BN�Ct�A� .�A��B�$�B*�$�Bd�	�m�B��$�z�B��$�B��	�m�B����B������B��B����C�/	���B��$�B����/�C��B!�CS�CSy�A��CS�BO�Cx� ��A��BB�BN��Cy�Ct� ��A��BN�CS�B�/���BI�BM���Cg����Cf���C/�Cn����"O�������BI�-�����C����"��C������C����8����C��3�����BM�C��BM���C=�C����C��BM��9�	����	����	��A��	�	�	��\�CU�^�CU�C[�PInfo�	��		ATTR����	�EqnL�	�decl�	�_match_2�	����	����	���A�_a�A��A����A��A��	����	����	��C��	��A��B�	��A��B#���B�B&�	��	�����������8�PInfo�	��		decl�	�equations_eqn_1�	����	����	��C�x	y�
��CT�D�	�/	�CS	��/���	����	����	��C��	�	�	��\�D�^�D�D �PInfo�	��		ATTR����	�EqnL�	�decl�	�_proof_1�	����	����	�subsingleton���	����	����	��A����PInfo�	��		decl�	�_proof_2�	����	����	��A�	�	����	����	��A��B	�?|�PInfo�
�		decl�	�_proof_3�	����	����	��A��?|�DD�	����	����	��A��B	�?|�PInfo�
�		decl�	�_proof_4�	����	����	��A�_x�A��B�	����	����	��A��
�A��CW	�PInfo�
�		decl�	�_proof_5�	����	����	��C�_x�A��D�	����	����	��C��
�A��D	�PInfo�
�		decl�	��	����	���_inst_1��_inst_2�A��C�A��	����	����
�Dj�
�A��6����pexists_prop_decidable�p�����Dk�	��Dq�F�A��B'�B(���A����B*�B4�	����������B6�	���	�BF�
/�
/�
/�	���Dq�D{�D�
/
�PInfo�	��		prt�	�VMR�	�_lambda_1VMR�	�_lambda_2VMR�	�_lambda_3VMR�	�VMC�

�		���P_freshu�kCVMC�
�		�����_mainVMC�
�		�����	��
VMC�	��		�
�
�	��	����

�
		
�(�
�
�	�_main������decl�	�equations_eqn_1�	����	����
�Dj�
�A�m�Dk�	�	�D��	����	����
�Dj�
�A�y�Dk�D��PInfo�
�		ATTR����
EqnL�
SEqnL�	�ATTR����	�classfintype�	���declsetfintype���a_inst_1�c_inst_2�
5�b����a�
�c�
�
5pifintype	a	����	��9��	�9
�PInfo�
�
	prt�
VMR�
_lambda_1VMR�
VMC�
�
	���{VMC�
�
	�
�
��
��decl�
equations_eqn_1���a�
�c�
�
5�m�D��
�	�D���a�
�c�
�
5�v�D��D��PInfo�
�
	ATTR����
EqnL�
SEqnL�
ATTR����
classfintype�
��declpfun_fintype_proof_1u_1p����hp_x���?�fhp��	a8_x/�D��
#���
$�?��
%�
&���?��D��PInfo�
!�	decl�
 _proof_2�
"�
#���
$�?��
%_x�
(	�m�D��D��D��D��
#���
$�?��
%�
,�D����D��D��PInfo�
+�	decl�
 _proof_3�
"�
#���
$�?��
%�7���D��{�D��d�D���D���h���
.��elim�
"���
#���
$�?��
%�7����E�������E�����C�D���D��{�
(/���d�E��E���
./���
./�E	�����
�D���D��������D���D��E��D�����D����E���D��E�D�m�����E#���E7�D��E�E<��E6�E@���D��E��m�C���E�E<functionfunext_iff�Y���E��>�>/�m���E"��forall_prop_of_false�>�m�����E�-�6����"��6������.�����������R�D������$�D��9�PInfo�
-�	decl�
 �
"�
#��_inst_1�8�
$��a_inst_2hp	�;��b�
(�
#���
3�8�
$�E��
4�E��@'	�E��
%�;��
(/�����@/�E��
)�
*��
'�E��1��
!�
"/	�
+�
"/	�
%�6���E����
./���
./�E
���
-�
"/	�PInfo�
 �	prt�
 VMR�
 _lambda_1VMR�
 _lambda_2VMR�
 _lambda_3VMR�
 VMC�
6��
.VMC�
7�(�
*�
)VMC�
8�2�
'VMC�
 �	�
4�
$�
3�
#��	�
6��
7�
8��decl�
 equations_eqn_1�
"�
#���
3�8�
$�E��
4�E��m�E��
 �
"	�E��
#���
3�8�
$�E��
4�E��v�E��E��PInfo�
:�	ATTR����
:EqnL�
:SEqnL�
 ATTR����
 classfintype�
 ��declquotientfin_choice_aux_main_meta_aux_aux_param_0_aux_param_1ι�	\_inst_1�	^α��$wSi	setoid�
A��l�	c�i/H�
��	_��	e�quotient�^�X��quotient�
@�^i�H�	�	��pi_setoid�a�^��
M��E�i��
O�^�E��
N�E����
P�E��X�
B�	\�
C�	^�
D�E��
E�E��
H�	c��E�listcases_on�a�^�a��
H�E���
I��
J�	��E��D���E��
M��
N�	�	���E���
M��E��
P��E��E��
N�E����
P�E��D��
I��
J�	��
Qnil�a��E����X�b�a�^�E��
M��
N�	��F��D�E���
M��F�
P��E��F�
N�F�D�
P�F��quotientmk�a�^�F�F$i�falseelim�^��l_hd�l_tl�	���
I��
J�	��
Qcons�a�	�E����D�F�E��
M��
N�
��	_��	e��F1�	�	��E���
M��FC�
P��E��FB�
N�FB�	��
P�FB��quotientlift_on₂�^�a�^�a�^���
M��
N�F>	�	��FP�j�FF�
M��FU�
P��E��FT�
N�FT�	��
P�FT���D�listmem_cons_self�a�	
�E�RecFn�
?����j�h�FT8listmem_cons_of_mem�a�
/a��l�
M��
N�V�	_�
�	e�
�	��F'�
M�
�
N�	a��	_��	e��F1��/�
�E��
�
M�
�F��
P�
�E��F��
N�F��F��
P�F��	�j�
h�F����^�
�����F�e�F���^�	������^�$w�F��F��
��
�	_a�
��F���B���^�$w�F��/�
h��F���orresolve_left�
�	��Gmem�a�
�	�a₁��l₁�F�a₂�/l₂�
M��
N�	a��	_��	e���F�h₁has_equivequiv�^�
�setoid_has_equiv�^�F���h₂�
s�a�^�
M�
��
N�d�	_�c�	e�c��
��
t�a�^�F��E��
��
M�
��F��
P�
��E��F��
N�F��F��
P�F��quotientsound�a�^�
M�c�
N��	_�o�	e�o�F1�o���c�E��c�
M�c�G�
P�c�E��G
�
N�G
�G�
P�G
�F��
f�c�
g�G
�F��
&�t�
�o�
�G�
h�G�F��o	�o����F��G%�G'�
��	�
i��F��t�t�F��G%���
h��G�A��F��
&�	��F��	�
�
f�c�
g�G
�G$�
h�G�G9��
h�G=�j�GGj�ch�G
�3(�G�G"�F��
N���	_�t�	e�t�F1�t�
��G%�F��Gc�
P�Ga�c	�
f�t�
g���	_��	e��F1���
�F��
&������t�
h�Gv�F��	��
����F��G}�G�
�	�
i�G��F������F��G}�
��
�
h��Gv�Bp�F��
&�G�	�
��F��G�	��
f�t�
g�Gs�G|�
h�Gv�G���
h�G��A��G�e�G���F��
N�Gn	�Gr�G.�F��G��
P�G��o�
f��
g���	_���	e���F1�����F��G��
����
��Gx�
h�G��F���	���c���F��G��G��
�	�
i�G��F��G��G��F��G��c��
h��G��
	�F��
&�G�	�c�F��G�	�
�	�
f��
g�G��G��
h�G��G���
h�G��B5�G�	�G��G(�G+�G6�-�G@���0�G@A�����Gt��#a�G@�����G@�G>�����"��"��e_1�G��$�G��$e_2�
&�
����
&�H ��H#/	�
��H �$�H ���/�H#	����
�����H���
�������HM������H�HQchas_equiv�^�G��$�
N�G��G��/	�$�
N�	a�G��	_�G��	e�G�/�F1�G��
�����e_2�'��
N�	a�G��	_�G��	e�G���F1�G��c�
��G��/�$�
N�	a�H�	_�H�	e�H��F1�H�o�c�G����$�
N�	a�H�	_�H�	e�H��F1�H�t�o�H��e_3�'��
N�	a�H �	_�H �	e�H ��F1�H ��t�H����^�
N�	a�	_�H��	e�H���F1�H�����H �
����F��H����H�/	��^�^�H��$�H����/�H��G��G��HN�q�^�G@�t	��HJ�G%�
h�G@�F��G.�t����G/�H��
����
i���F��HZ��F��G.���
h��G@��F��H
�F����	�H�HP�H��
h�G@�H���
h�H���H��l���
x�_h�Gt��
y�Ha�He�F��
N�Hn	�Hr�G��F��I�
P�I
�G��G��G��G��-�G����0�G��
{�����
&�H�o�#a�G������G��G��c�c���"�G��"�H�
|�H�$�H �$�H��
}�
&�
����
&�I,��I//	�
��I,�$�I,���/�I/	�c�i�a�G��c	�c�c�
��G��c��I%���
��G��c����I^��
y�Gn��Gr�	�IG�	��
z�G=�H�G��A��GF�-�H����"��H������.��G@�����G@�����j�I����HS�I��H��I�dif_neg�^�G@�H��I��G%�H��H��H�I��I��H��I���I��PInfo�
?�VMR�
?_lambda_1VMR�
?_lambda_2VMR�
?_lambda_3VMR�
?_lambda_4VMR�
?_lambda_5VMR�
?_lambda_6VMR�
?VMC�
���
P�P_freshu��F�P_freshu��CVMC�
���
P�
��
��
OVMC�
��h���
VVMC�
���
g�
f�P_freshu��M�P_freshu��L�P_freshu��J�P_freshu��A	VMC�
�
��
e�
d�
��
��
��
��
��
O�\VMC�
�� �
a�
`�P_freshu��EVMC�
?+���
H�
E�
D�
C�
Blistcases_on�
��
��
O�\�
��
?�
��
��
O�[lift₂decl�
>_aux_param_0_aux_param_1�E��
B�	\�
C�	^�
D�E��
E�E��
H�	c��E�listbrec_on�
��
�����F�
H�E�_F�
�below��������
H�	���
I��
J�	��F7�E��FV�Fb��
I��
J�E��F7�
H�	���
I��
J�F�E��	��	��
��I��
�
H�F{��
I��
J�F��E��F��F��E��
M��
N���	_�
��	e�
�	�F��E���
M��I��
P��E��I��
N�I��F��
P�I��F��
R��������
H�F���
I��
J�I��E��F��F��
��I��
��
H�I���
I�c�
J�G	�E��G�F��E��
M�o�
N�G\	�G!�E��o�
M�o�I��
P�o�E��I��
N�I��G!�
P�I��G�E��
M�c�
N�G	�G�G�
M�c�J�
P�c�E��J
�
N�J
�G�
P�J
�F�	��
I��
J�F��F��I��
��I���
H�F���
I�
��
J�F��E��F��F��E��
M�c�
N�G		�G�G�
M�c�J(�
P�c�E��J'�
N�J'�G�
P�J'�F��J�F�E��
M�
��
N�F��F�c�F��F��
M�
��J;�
P�
��E��J:�
N�J:�F��
P�J:�F��F'�J<�JF�
V�
��F*�B�l_hd�l_tl�F���
I�
��
J�F��F1�c	�J$�
��I��c�
H�F���
I�o�
J�I��E��G!�G�E��
M�t�
N�Go	�G{�E��t�
M�t�J_�
P�t�E��J^�
N�J^�G{�
P�J^�G!�JT�F�E��
M�o�
N�I��G^/�G!�I��
M�o�Jt�
P�o�E��Js�
N�Js�G!�
P�Js�G�FR�
��
M�o�
N�I��G!�J��F��I��
M�o�J��
P�o�E��J��
N�J��G!�
P�J��G�Fd�o	pprodfst���������
H�G��
I�t�
J�Go�E��G{�G!�E��
M��
N�G�	�Gx�E���
M��J��
P��E��J��
N�J��Gx�
P�J��G{	�
Qrec�������on�G����punit����hd�otl�GYih�J�pprod���������
����������
H�G���
I�G��
J�Hn�E��G��G��E��
M�G��
N�H~	�G��E��G��
M�G��J��
P�G��E��J��
N�J��J��
P�J��J��J�	�
����������J��J��J��J��
`�o�
a�J����Fp��/�
d�J��
e�
M�t�
N�Go/�G{�F'�
M��
N�G��G����Gx�J��
M��J��
P��E��J��
N�J��Gx�
P�J��G{�
f��
g�J��F��G���G���Gx�
h�K�G�������G��K
�G��/�
h��K���F��G���G���
m�J��
n�J��
o�o��
p�
M���
N�Ha��G��
q�F����F��K*�t��
u�F��
M�G��
N�J���J��F��K4�J��
M�G��K3�
P�G��E��K2�
N�K2�J��
P�K2�J��G�
M�H�
N�H��H��
��H�E��H�
M�H�KI�
P�H�E��KG�
N�KG�KH�
P�KG�J��
f�H�
g�KG�F��H#��H��KH�
h�KX�F��H	�H����F��K^�K`�
��H�	�
i�H��F��H �H �F��K^���
h��KX�A��F��
&�H�	��F��H�	��
f�H�
g�KG�K]�
h�KX�Kr��
h�Kv�j�K��
x�H�
y�KG�3(�KX�K[�F��
N�H��H���
�K^�F��K��
P�K��H	�
f�H �
g�H��H����F��I*�
��H��
��H �
h�K��F��H�	�H��c���F��K��K��
��I,	�
i�I,�F��I(�I(�F��K��c�
�
h��K��Bp�F��I/	�c�F��I,	�
��
f�H �
g�K��K��
h�K��K���
h�K��A��K��
z�KX���F��
N�H�	�K��Kg�F��K��
P�K��H�
f�H��
g�	a�I(�	_�I(�	e�I(�F1�I(�
���F��I/�c�I(�c�K��
h�K��F��I(	�I(�o���F��K��K��
�	�
i�L�F��I,�I,�F��K��o��
h��K��G��F��
&�L	�o�F��L	�c	�
f�H��
g�K��K��
h�K��L��
h�L�B5�L	�K��Ka�Kd�Ko�-�Ky���0�Ky�
{�����I)�
��#a�Ky�����Ky�Kw�����"�H��"�I(�
|�K��$�L�$�
}�
&�
����
&�LK��LN/	�
��LK�$�LK���/�LN	����
��H����LB���
��H������Lx������L2�L|�
~�HV�K��$�
N�K��K��H�/	�$�
N�	a�I,�	_�I,�	e�I,/�F1�I,�c�
��I(��
��'��
N�	a�L�	_�L�	e�L��F1�L�o�c�I,�/�$�
N�	a�LF�	_�LF�	e�LF��F1�LF�t�o�L���$�
N�	a�LG�	_�LG�	e�LG��F1�LG��t�LF���
��'��
N�	a�LK�	_�LK�	e�LK��F1�LK����LG���H��
N�	a�	_�L��	e�L���F1�L��G����LK�
����F��L����L�/	�H��L��$�L����/�L��K��L&�Ly�H��Ky�H 	��Lu�K^�
h�Ky�F��Kg�H �
����Kh�M�
��I(�
i�I(�F��L��H��F��Kg�
���
h��Ky�H��F��L8�F��I(�	�L1�L{�L��
h�Ky�M��
h�M�H��M�l�H���
x�H��
��I)�
��
y�L��L��F��
N�L�	�L��L�F��M4�
P�M2�K��K��L�L�-�L���0�L�
{�����
&�LF�t�#a�L�����L�L�o�o���"�L�"�LF�
|�LJ�$�LK�$�L��
}�
& �
�!���
&�MQ��MT/	�
��MQ�$�MQ���/�MT	�o�IG�L�o	�o�o�
��L�o��MJ���
��L�o����M���
y�H���K��	�IG�H�	��
z�Kv�L3�K��A��K�-�M���"��M�����.��Ky�����Ky�����j�M����L~�M��L��M��I��Ky�L��M��K^�M�M�L1�M��M��M#�M&���M�	�PInfo�
>�VMR�
>VMC�
>+���
H�
E�
D�
C�
B�
��
��
��
O�\�
��
?�
��
��
O�
�decl�
>equations_eqn_1_aux_param_0_aux_param_1�
B�	\�
C�	^�
D�E��
E�E�f�
I�
J���	_/�	e/�F/�E���8��
��
��E��
M/�
N�E��F��X�E�/�
M/�M��
P/�E��M��
N�M��X�
P�M����
>����/	�M��F'�M��M��
V/�F*���
B�	\�
C�	^�
D�E��
E�E��
��M�������N�������N�N�PInfo�
��ATTR����
�EqnL�
�decl�
>_proof_1_aux_param_0_aux_param_1�
B�$w�
D�?yi�
f	�
h�'���
��	\�����
B�$w�
D�?y�
��
f	�
h�N"���N&��
�/�
i/�N$��������	\��	�PInfo�
��decl�
>_proof_2_aux_param_0�
B�	\�
�l�	`�
f	�
g�	h�F1	�
h��
&/�F��	�
B�	\�
��
��	`�
f	�
g�NC�
h�NG�F��+�	/�NJ�PInfo�
��decl�
>_proof_3_aux_param_0_aux_param_1�
B�	\�
C�	^�
D�E��
E�E��
��
��M��
m���
n�
M��
N�	�	�D�
o�/��
p�
M��
N�F>/�	��
q�F����F��Nc���
u�F��
M�
�
N�F���F��F��Nm�F��
M�
�Nl�
P�
�E��Nk�
N�Nk�F��
P�Nk�	��M��E��
M��
N�F��F1����F��E���
M��N��
P��E��N��
N�N��F��
P�N��F��F'�N��N��
f��
g�N��F��
���F���F��
h�N��F��	��
���F��N��N��
��c	�
i�c�F��J��
��F��N��
��
h��N��A��F��
&�c	�
�F��c	��N��
f��
g�N��N��
h�N��N���
h�N��j�N��
B�	\�
C�	^�
D�E��
E�E��
��
��M��
m���
n�N_�
o�/��
p�Nb�
q�Nj�
u�N|�G�N��N��N��N��
x��
y�N��3(�N��N��F��
N�I��F1�
����N��F��N��
P�N��F��
f�
��
g�F��JR�
��F��
&�o��G��F��
h�N��F��Gf�c����F��Gf�N��
��t	�
i�t�F��G��o�F��Gf��
�
h��N��Bp�F��G	��F��t	��
f�
��
g�N��N��
h�N��O��
h�O
�A��O�
z�N����F��
N�F�	�N��J��F��O+�
P�O)�F��
f�c�
g�G	�G
��
�F��G��G!��G�
h�O5�G&�o�
����G)�O:�G5�
���
h��O5�G��F��G?�
��GC�	�
f�c�
g�O4�O9�
h�O5�OA��
h�OE�B5�OK	�O1�N��N��N��-�N����0�N��
{�����N���#a�N������N��N��
�
���"�c�"�o�
|�G�$��$���
}�H�
��G����G���G�/	�
��G��$�G����/�G�	�
�
�
�
��c�
��On���
��c�
����O�������O^�O��
~�HV�O+�$�
N�G�O3�c/	�$�
N�G\/�G^���K%�
��'��
N�Gn��Gp�
���t�/�$�
N�G���G��c�
��K*��$�
N�Ha��Hc�o�c�K
��
��'��
N�Hn��Hp�t�o�G����H��
N�H~��H���t�G��
����F��O����O�/	�H��O��$�O����/�O��O0�OR�O��H��N��
�	�
�O��N��
h�N��F��J��
�����N��O��
��o�
i�o�F��O��c�F��J����
h��N��H��F��Od�F��o�
	�O]�O��O��
h�N��P
��
h�P�H��P�l�c�
�
x�c�
��N���
y�G]�O��F��
N�G��O��G.�F��P/�
P�P-�G��O;�O=�O>�-�OF���0�OF�
{�����H�c�#a�OF�����OF�G>�
��
����H9�
��Il�
�	�
��
��H>�
���PC���HD�
�����PZ��
y�F��
�N��	�IG�c	�
�
z�N��O_�O1�A��N��-�P���"��P�����.��N������N������j�P���O��P��O��P��I��N��O��P~�N��P�P�O]�P��P��P �P#���P�PInfo�
��decl�
>equations_eqn_2_aux_param_0_aux_param_1�
B�	\�
C�	^�
D�E��
E�E��
��
��M�f�
I��
J�	��F1�	�F�M��E��
M��
N�	��F1�	�D�F�
M��P��
P��E��P��
N�P��D�
P�P����N��/�P��FR���N_�P����F�
M��N^�
P��E��N]�
N�N]�D�
P�N]���D��Fd�	�P��
`��
a�N]8�Fp�/�
d���
e�
M��
N�	����F'�
M��
N�F>�F?�/�	��FF�
M��P��
P��E��P��
N�P��	��
P�P����
f��
g�P��F��
���	���	��
h�P��F��Bp���
��
��
����	/�
h��P����
������	�
�������/	�
B�	\�
C�	^�
D�E��
E�E��
��
��M��
��P��N�P��N�P��P��PInfo�
��ATTR����
�EqnL�
�decl�
=u_1u_2�
B�a�
C���
D����
E�
F	�
G�
����
H�C��
I/�
J���
K���X���
L�
����
M��
N��	���
O������
M��QC�
P��
O���QB�
N�QB���
P�QB�X�
B�a�
C���
D�Q8�
E�Q;�
>����	�PInfo�
=�VMR�
=VMC�
=��
E�
D�
C�
B�
>decl�
=equations_eqn_1�
��
��
B�a�
C���
D�Q8�
E�Q;�
��
I�
J�Zlistnil�
�/�Q<��8���QA�
M/�
N���Qb��X�QF/�
M/�Qk�
P/�QJ�Qj�
N�Qj�X�
P�Qj���
=���
�/	�Qc�
U�����Ql�Qw�
V/�
X�����
B�a�
C���
D�Q8�
E�Q;�
>equations_eqn_1����	�PInfo�
��ATTR����
�EqnL�
�decl�
=equations_eqn_2�
��
��
B�a�
C���
D�Q8�
E�Q;�
��
��V�
��
I��
J��listcons���	�Q<���X���QA�
M��
N�R�A��E��Q��	�D�QF��
M��Q��
P��QJ�Q��
N�Q��D�
P�Q����Qz��/�Q��
]�������������
M��
N�Q�	�D�Q����Q��
M��Q��
P��QJ�Q��
N�Q��D�
P�Q����D��
_���	�Q��
`��
a�Q�8�
c���/�
d���
e�
M��
N���A��E����Q��
M��
N�{��A��E��Q���/�	��QF��
M��Q��
P��QJ�Q��
N�Q��	��
P�Q����
f��
g�Q������2���P��	��
h�R����Bp�Q�
��������	/�
h��R���
������	�
�������/	�
B�a�
C���
D�Q8�
E�Q;�
>equations_eqn_2����	�PInfo�
��ATTR����
�EqnL�
�decl�
=_sunfold�
��
��QX�
B�a�
C���
D�Q8�
E�Q;�
H�C��Q@�
R��������
H����
I��
J�Q��Q<�D���QA�
M��
N�Q�	���QF��
M��RH�
P��QJ�RG�
N�RG���
P�RG�D��
I��
J���Qb��Q��b�����QA�
M��
N�Q��Qb��D�Q��
M��Ra�
P��QJ�R`�
N�R`�D�
P�R`���Q��Rb�Rl�
V��Q����
Y��
Z����
I��
J�Q��Q��	�Q<���D�R^�QA�
M��
N�Q��Q�	�	��Q��
M��R��
P��QJ�R��
N�R��	��
P�R����Q����
M��
N�Q�	�	��R��j�Q��
M��R��
P��QJ�R��
N�R��	��
P�R����D��Q��	�Qz�����
`��
a�R�8�Q��
/�
d���
e�
M��
N��A�
�E�
�	��Q��
M�
�
N�{��A��E��Q���/�F��QF�
�
M�
�R��
P�
�QJ�R��
N�R��F��
P�R��	��
f�
�
g�R��R�2��F��F��
h�R��R	�F��F�����F��F��3i�
i�
���F��B��:�F��/�
h��R����F��27��
l���
�	��
m���
n�R��
o�F��
p�
M��
N�>n�A��E���F��
q�
s���F��
t���F��F��
u�
s�����
M�
��
N�{�c�A�c�E�c��F��
t�����S�QF�
��
M�
��S�
P�
��QJ�S�
N�S�F��
P�S�F��
w�����
M�c�
N�{�o�A�o�E�o�Q��o���G�QF�c�
M�c�S4�
P�c�QJ�S3�
N�S3�G�
P�S3�F��
f�c�
g�S3�R�3k�
�G"�G�
h�SB�R	�G%�G'����G%�G'�	
�	�
i���G.�G0�:�G%���
h��SB�A��F��3o	��R��	�
�
f�c�
g�S3�SE�
h�SB�SV��
h�SZ�j�Sc�
x�c�
y�S3�3(�SB�G"�S�
N�{�t�A�t�E�t�Q��t�
��G%�S�S��
P�S~�Gf�
f�t�
g�{��A��E��Q����
�R�m����Gy�G{�
h�S��R	�G}�G����G}�G�	
�G�	�
i�G���G��G��:�G}�
��
�
h��S��Bp�F��m�G�	�
��R��G�	��
f�t�
g�S��S��
h�S��S���
h�S��A��S��
z�SB���S�
N�S�	�S��G.�S�S��
P�S��G��
f��
g�{���A���E���Q������R�S��
��G��Gx�
h�S��R	�G��G�����G��G��	
�G�	�
i�G���G��G��:�G��c��
h��S��G��F��m�G�	�c�R��G�	�
�	�
f��
g�S��S��
h�S��S���
h�S��B5�T	�S��SG�SJ�SS�-�S\���0�S\�
{�����S���#a�S\�����S\�3o�����"��"���
|�S��$�G��$�H�
}�m�H���H ���m�H ��T-/	���H �H+�/�T-	����v����T$���������TV������T�TZ�
~�
���S��$�
N�S��S��HZ	�$�
N�{�G��A�G��E�G�/�Q��G��
���Hg�
����
N�{�G��A�G��E�G���Q��G��c�
��Ht/�$�
N�{�H�A�H�E�H��Q��H�o�c�H���$�
N�{�H�A�H�E�H��Q��H�t�o�H���
����
N�{�H �A�H �E�H ��Q��H ��t�H���K�
N�{�H��A�H��E�H���Q��H�����H�����S�T����T�/	������T��$�T����/�T��S��T�TW�q���S\�H��TS�G%�
h�S\�R	�G.�H����SM�H��	
���
i����HZ�H��:�G.���
h��S\�H��F��T�R����	�T�TY�T��
h�S\�T���
h�T��H��T��>����
x��
��S���
y�Ti�Tm�S�
N�Tu	�Ty�G��S�U	�
P�U�G��S��S��S��-�S����0�S��
{�����m�H�o�#a�S������S��S��c�c���"�G��"�H�
|�T*�$�H �$�H��
}�m�I(���I,���m�I,��U'/	���I,�I7�/�U'	�c�	(�G��c	�c�c�v�G��c��U����G��c����UT��
y�S���S��	�	(�	��
z�SZ�T�S��A��Sb�-�T����"��T������.��S\�����S\�����j�Uy���T\�U}�T��Uz�
����S\�H��Ux�G%�T��T��T�U|�U��T��T����Uy�PInfo�
��declquotientfin_choice_aux_equ_1u_2ι�a_inst_1��α�Q8S�Q;l�Cfi/H���X���QR�Qz���i������
��h�QB�
U�
����X9�Q��QD�QQ�
��a�
����
��Q8�
��Q;�
��a�
����
��Q8�
��Q;�
��C�
��U�listbrec_on�
���
����
��
���
��RB�D���RU�Qz��	��
������
���
��RG�U����D9�Q��RI�RT�
���_F�
�below�
��
����
��
���
��Q������QA�R��R��R��	��
�����
���
��R��U��	���9�Q��R��R��
��RI�
��Q��
��
���
��R��	��
��U��
�
��R��
��
���
��S�F����QA�
M��
N�{�
��A�
��E�
�	�F��QF��
M��V
�
P��QJ�V	�
N�V	�F��
P�V	�F��Qz�������
��F��
���B���
���
��V	�U��F��F�9�Q��V�V�
R�
��
��R��
��
���
��V�F��
��U��
��
��V�
��
��c�
��S/�G���QA�
M�o�
N�Sy	�G!�QF�o�
M�o�V<�
P�o�QJ�V;�
N�V;�G!�
P�V;�G�Qz�o���o���t�G{�
��o�P�
��o�N��
��o�
��V;�U��G!�G9�Q��V=�VH���QA�
M�c�
N�S/�G�S7�
M�c�Ve�
P�c�QJ�Vd�
N�Vd�G�
P�Vd�F��Qz�c���c���o�G!�
��c�N��
��c�B�	�
��c�
��Vd�U��G�F��3�Q��Vf�Vp	�
��
���
��S�Qb��F��
��U���
��R��
��
��
��
��S�F����QA�
M�c�
N�S/	�G�S7�
M�c�V��
P�c�QJ�V��
N�V��G�
P�V��F��V{�
��c�
��V��V~9�Q��V��V��V������QA�
M�
��
N�S�Qb�c�VP�S�
M�
��V��
P�
��QJ�V��
N�V��V��
P�V��VR�Q��V��V��
V�
��Q��Vx�V��S)�V��V��V�i�
�h�V��'�S�
N�S.�Qb�o�
��t�N�	�S�V��
P�V��
��t�P	�
V�o�Q��V��3l_hd�l_tl�R��
��
��
��
��S�Q��c	�F��
��U��c�
��S�
��
��o�
��V:�G!���QA�
M�t�
N�S�	�G{�QF�t�
M�t�V��
P�t�QJ�V��
N�V��G{�
P�V��G!�Qz�t���t����Gx�V��V��
��t�
��V��U��G{�G!9�Q��V��W�V������QA�
M�o�
N�V:�S{/�G!�V?�
M�o�W%�
P�o�QJ�W$�
N�W$�G!�
P�W$�G�VS�S0	�
��o�
��W$�VV�3�Q��W&�W0���W>�W2�Q��J��
M�o�
N�V:�G!�W1�F��V?�
M�o�WC�
P�o�QJ�WB�
N�WB�G!�
P�WB�G�U��J��F��J��Q��o	�Q��WD�WP�
��o�
��WB���Q���/�
d�J��
e�
��t�
��S�/�G{�Q��
M��
N�S��S����Gx�QF��
M��Wl�
P��QJ�Wk�
N�Wk�Gx�
P�Wk�G{�
f��
g�Wk�R�S���K�Gx�
h�Wz�S��K
�R�G��
��G��G��	/�
h��Wz���R�G���	�R'�o�VN�VP�VR	�W=�����W>�W��"�W1�"�QA�
M�t�
N�S��S��/�G{�V��
M�t�W��
P�t�QJ�W��
N�W��G{�
P�W��G!e_1���QA�Wm�Wx�$�QA�
M���
N�Ti�Tk���G��QF���
M���W��
P���QJ�W��
N�W��G��
P�W��Gx�$�QA�
M�G��
N�Tu�Tw���J��QF�G��
M�G��W��
P�G��QJ�W��
N�W��J��
P�W��G�e_2���QA�
M�G��
N�T��T����J��QF�G��
M�G��W��
P�G��QJ�W��
N�W��J��
P�W��J���
�
��QA�
M�H�
N�T��T��
��KH�QF�H�
M�H�W��
P�H�QJ�W��
N�W��KH�
P�W��J������X��X	/	��
��
��X�$�X���/�X	�W9�W��5`�QA�
M�o�
N�W$�
���G0�V?�
M�o�X$�
P�o�W*�
N�W$�X#�
P�W$�
���N��W9�Q��VP�
M�o�
N�WB�X#�X1�VR�V?�
M�o�X6�
P�o�WJ�
N�WB�X#�
P�WB�X,�W8�WV�VS	�
`�o�
a�WB�
���
��Wk�U��Gx�G{���W`�
d�X4�
e�
M�t�
N�Wf�
����H��Q��
M��
N�Wk�
��G��G��Wo�
M��XZ�
P��Wr�
N�Wk�XY�
P�Wk�
��G��H��
f��
g�Wk�W{���G����G��J���XY�
h�Wz�R	�W�	�W���W�/�W��W��W���
�a�J��
��Wh�W��W�f�X�a₁�O�a₂�
���
��S���Gxb₁�O�b₂�
��G��
��W���J��
��S�K
�S�K
���
��S�
��H�
��W���KH�S�X��W��
M�H�X��
P�H�QJ�X��
N�X��KH�
P�X��J����QA�
M�H�
N�T��T���
�KZ�QF�H�
M�H�X��
P�H�QJ�X��
N�X��KZ�
P�X��KH�Nf/�H�	�W��W��5��
d�J��
e�Wh�W��W��
��
��o�VN�VP�VR	�W8q₁�Q<�J��F��
��Q<�O��
�/e_1���Q<�K%�c�q₂�QA�
����
��W���G��W��
M���X��
P���QJ�X��
N�X��G��
P�X��Gx�
��QA�X��W��
M�G��X��
P�G��QJ�X��
N�X��J��
P�X��G�e_2���QA�
��G��
��W���J��W��
M�G��X��
P�G��QJ�X��
N�X��J��
P�X��J��
��
��O��
��
��H�
��X��
�KZ�QA�
M�H �
N�T��T����K��QF�H �
M�H �Y�
P�H �QJ�Y�
N�Y�K��
P�Y�KZ�
��
��O��
��
��H �
��Y
��K��QA�
M�H��
N�{�I(�A�I(�E�I(�Q��I(�
���K��QF�H��
M�H��Y.�
P�H��QJ�Y-�
N�Y-�K��
P�Y-�K�e_3���
��H��
��
��H��
��Y)��K��QA�
M�I(�
N�{�I,�A�I,�E�I,�Q��I,�c�
��K��QF�I(�
M�I(�YL�
P�I(�QJ�YK�
N�YK�K��
P�YK�K�c�
��K`�
��
��I(�
��YG�
��K��
��K��
��
��L�
��{�LF�A�LF�E�LF�o�L�
��S�I,�t�S�Yl�I(�t�
��S�
��LG�
��{�LK�A�LK�E�LK��LG�S�Y}�QF�LG�
M�LG�Y|�
P�LG�QJ�Yz�
N�Yz�Y{�
P�Yz�LF���QA�
M�LK�
N�{�L��A�L��E�L��Q��L��G����LK�QF�LK�
M�LK�Y��
P�LK�QJ�Y��
N�Y��Y��
P�Y��Y{��/�H�	���Q<�M�H�
���
��Y��
����Q<�K��H �c�
���QA�
M�L�
N�Yg�Q��LF�t�o�Yi�QF�L�
M�L�Y��
P�L�QJ�Y��
N�Y��Yi�
P�Y��I,�Q��K��Yk�Y��H��o�Y��
M�L�Yj�
P�L�QJ�Yh�
N�Yh�Yi�
P�Yh�Y����	�Y��/�X��
��K��
��
��LF�
��{�LG�A�LG�E�LG�t�Y��QA�
M�LG�
N�Yy�Q��LK����Y{�Y��
M�LG�Y��
P�LG�QJ�Y��
N�Y��Y{�
P�Y��Y���
��Z�
��Yl�
��Y}�
��LF���
��
��L��
��{�MM�A�MM�E�MM�G��L��
��S�LK�G��S�Z�LG�G��
��S�
��MQ�
��{"�A�Z�E�Z�H�MQ�S�Z&�QF�MQ�
M�MQ�Z%�
P�MQ�QJ�Z#�
N�Z#�Z$�
P�Z#�MM���QA�
M�Z�
N�{#�A�Z8�E�Z8�Q��Z8�H �H�Z�QF�Z�
M�Z�ZD�
P�Z�QJ�ZB�
N�ZB�ZC�
P�ZB�Z$�X��X�	/��
��QA�Ya�YO�
M�I(�Y`�
P�I(�QJ�Y_�
N�Y_�K��
P�Y_�K���
��Zp�
����QA�
��I,�
��{�L�A�L�E�L�c�Y��QF�I,�
M�I,�Zz�
P�I,�QJ�Zy�
N�Zy�Y��
P�Zy�K���Y��Y�/�Z_�Ze�
��M�
��Z{�Y��
��Z��
����
��K��
��Yk�QA�
M�LF�
N�Y��Q��LG��t�Y��QF�LF�
M�LF�Z��
P�LF�QJ�Z��
N�Z��Y��
P�Z��Yi/�Y��Y��Z]�5��YY�Q��M�Ya�YY�Y��Zo���X��Z��
��Z��
��K��
��Yk�
��Yl�
��Y}�
��S�Z	�S�Z	�L���
��S�Z�S�Z�QF�L��
M�L��Z�
P�L��QJ�Z�
N�Z�Z�
P�Z�Y����QA�
M�MM�
N�{�MQ�A�MQ�E�MQ�Q��MQ�H�G��Z/�QF�MM�
M�MM�Z��
P�MM�QJ�Z��
N�Z��Z/�
P�Z��Z�X��X��5��Z�	�/���WX�WX�E�X��WX�XH�
`�o�
a�WB�VV�Wa�Wd�
��
��S+�
��
��t�
��S��G{���QA�
M��
N�S�	�Gx�Wo�
M��[$�
P��QJ�[#�
N�[#�Gx�
P�[#�G{�Qz���������G��X"�X+�
���
��[#�XJ9�Q��[%�[/	�
��
�o�
��S+��
��
��o�
��Sv�
���
��
��
��S��
��
��G��
��W��J����QA�
M�G��
N�W�	�J��W��
M�G��[S�
P�G��QJ�[R�
N�[R�J��
P�[R�J��Qz�G����G����H�KH�W��
��G��G��
��G��
��[R�U��J��J�9�Q��[T�[^�[K	�
��[N�[E�[��[K�Wc�W��W��X��W��W=�W=�5��W1�W=�S)�W&�W0�
f�o�
g�W$�R�3o��G{��G!�
h�[��R	�H��O��R���XT�	/��Q������
h��[��
����
��X��D�Q��G���	�R����	j�oh�W$�3(�[��[��S�
N�S��W��H��S�[��
P�[��G%�
f��
g�Wk�W}�
h�Wz�W����Q��G����
h�W��
��G��
��X��	��Q��H�
�	�W��3e�[����S�
N�S�	�Wj��S�[��
P�[��G.�
f���
g�W��R�S���J���G��
h�[��R	�G�	�O��R�H�
��H�G��	���Q��H���
h��[��
��H�
��X��	��Q��H ��
	�R�H��		���[��[��[��-�S�	����0�\.A�����S���#a�\.�����\.�S������������G�e_1�[����H���He_2�T-���H����m�H���\E/	���H����H����/�\E	����v�����\=���������[��\*�����\+�\q�
~�T_�[��$�
N�Ti�W���/	�$�
N�Tu/�W��G��e_2���
N�T���W��G��/�$�
N�T���W��H���$�
N�T���X��H��e_3���
N�T���Y�H ���K�
N�Y(��Y,�H��
����S�\����\�/	�T��\��$�\����/�\��[��\(�\o�T��\.�G}��\l�H��
h�\.�R	�[��K*�R�G��XX����Q��G����
h��\.�/��Q��G����R�G���	�\*�\*�E�H��\*�>�����
���_h�S���
��Tu�W��S�
N�T�	�W��G��S�\��
P�\��G��\�\�-�U	����0�\��
������T(�
�#a�\������\��U�������H���H�
��\B���H����I(��U'���L���m�L��]/	���L���L���/�]	��	(�H�	���v�H���]
����H����\�A��
��S���Wjsetoidrefl��
N�Ti��W��K
�K-�R	�K*�K*�\���-�\�����0�]S�
������S����#a�]S�����]S�]S�����G����G��
��U���H���H ��\E���I(���U"��U"/	���I(���I(���/�U"���v�G�����]���]S����G�����\�	�	(��	��
��[��\,�[����Q����	��[��-�\����"��\������.��\.�����\.�����\*���\s�]��\��]��U��\.�\��]��H��\��\��\*�\*�\��]I�[��G%�]�		�PInfo�
��&declquotientfin_choice_proof_1u_1u_2ι�a_inst_2��α�Q8S�Q;fi�Q<��a�Vb��h�<����<��������_x���Q����l����QAi�H����
���
�	��QF����^�
P��QJ�^��^�	��
P�^�	����Q��]�eqrec�	�
� �]��^	�^l�Q��U�i�_x�Q��D	�^�[sound� �Q��]�	�^&��a����
�Q8��Q;��]���V�����]����^3�^�^ �Q��
M��
N�Q�i���RK�
M��^?�
P��QJ�Q��
N�Q��^>�
P�Q��i�h�Q�quotientout�"���D���^�^/�Q��
M��
N�RG�^>�RK�
M��^X�
P��RN�
N�RG�^>�
P�RG�^G��� �RG�^P�����^3�^g�"�^�"����Q���������QA��
��R��������F��R���
�^v�
P�
�QJ�^u��^u�F��
P�^u�	����Q��^m	e_1������Q������^�QA����>n�������F��QF����^��
P��QJ�^���^��F��
P�^��F����Q��^��$����R����
��^p�QA����V���
����
��F��V
���^��
P��QJ�^���^��F��
P�^��F����R��^�/�$����R������^��QA��
���S���c���c�F��S��
��^��
P�
��QJ�^���^��F��
P�^��F����R��^��e_2������R������^��QA��c��S*���o���o�G�S7��c�^��
P�c�QJ�^���^��G�
P�^��F����R��^���W�����V���
���^��QA��o��Su���t���t�G!�V?��o�_�
P�o�QJ�_
��_
�G!�
P�_
�G���V�_������_!��_$/	�X�_!�$�_!���/�_$�^0�^Ve_1�^�^�%�^��^�e_1���^��^�/�$�^�n�m�^��^���Ze�^��^��/�%�_I�&���_�_��������S���c��^��QA��t��S��������G{�V���t�_Z�
P�t�QJ�_Y��_Y�G{�
P�_Y�G!�^�_S���S�_R��_i�	�_q	�5��^��^�^��_H�^�/	�^'�^S��a�Q����QA�
M��
N�^"��
��Q��
M��_��
P��QJ�^"�
N�^"�_��
P�^"��R����������
����F��
���^=�
����
���
��^"�U��_��_���
� �R��^M�F��	��	��Q��_��_���� �^"�^M�	����D�
�Q��(�Q����QA�
M��
N�U�����^	�
M��_��
P��QJ�U��
N�U��_��
P�U���Qz�������
�������F��
���_��
����
���
��U����Q��_��_���� �U��^M�	��	������Q��(�Q��_��(�Q��_��_��
���
��^"�D�_��(�Q��"�_��"�QA�
M��
N�R�	�_��^	�
M��`�
P��QJ�`�
N�`�_��
P�`�_�e_1���QA�
M�
�
N�_��V�R��
M�
�`�
P�
�QJ�_��
N�_��`�
P�_���$�QA�
M��
N�S/��
��B��^��
M��`)�
P��QJ�`&�
N�`&�`(�
P�`&�
P�
��B��$�QA�
M��
N�V��Vx�V
�
M��`:�
P��QJ�`8�
N�`8�`9�
P�`8�Vze_2���QA�
M�
��
N�S��V��S�
M�
��`I�
P�
��QJ�`H�
N�`H�V��
P�`H�V��W��QA�
M�c�
N�S/��V��S7�
M�c�`[�
P�c�QJ�`Y�
N�`Y�`Z�
P�`Y�V������`h��`k/	�X�`h�$�`h���/�`k�_��`�
C�7��
D�����
Ei�
�Q:�
H�R���
I��
J�V3�Q>��
I�
��
J�S	�Q�e_5���
I�c�
J�Vd�RD�Ze�
I�o�
J�V:/�R|	��`��,���
I�t�
J�S���Q<�	������QA�
M��
N�S���	��Wo�
M��`��
P��QJ�`��
N�`��	��
P�`��	��[2����/�`��5��QA�
M�o�
N�`����V?�
M�o�`��
P�o�QJ�`��
N�`����
P�`��D�VK��/	�_��_��_��_��`�5�����x�^"�Q<�_��_��x��x�^"�_��^M�_��_��D�x��x�^"�D�
���w�"�^"��^"�`��`��`��
��^"quotientout_eq�"�_��_��D�_��_��5��_��_��(�Q�quotientfin_choice_aux_eq��!��	��U���_�	�^�^/�^2�^f�a	ga���QAi�h�Q��^o����	��Q��3��a�
P��QJ�a�4�a�	��
P�a���2���Q��a�a'�3��4�a�_�eq_of_heq�#�^��^�^n�_=�^��Q��
M��
N�Q�/�_��Q��
M��a6�
P��QJ�a5�
N�a5�_��
P�a5�_���� �a5�_��^��^*�Q��^m	�Q��
M��
N�Q��_��Q��
M��aP�
P��QJ�aO�
N�aO�_��
P�aO�_���� �aO�_�heqtrans�#�^��^�_=�^�eqrec_on�#� �^n�_=�^��^��aL�aE�aE�a_eq_rec_heq� �#�^n�^��_=�^��aL�aE�2�]�a'�^oe_0�m�^�	
�^p	�;�^pheq�#�QA�3��4�^�/�F��V
�3��a�
P��QJ�a~�4�a~�F��
P�a~�F��?��QA�3��4�^��F��V
�3��a��
P��^��4�^��F��^������#�QA�3��4�^��F��^��3��a��
P��QJ�a��4�a��F��
P�a��F����n� � �Q��]��p� � �Q��]��q� � �Q��]��r���a�	�aL�PInfo��1decl�_proof_2�	�
��a_inst_1�c�
�Q8��Q;a��������b�/����Xh�S����	���S�a��QG���a��
P��QJ�	��	���
P�	�X���QAi����Q��C������Q��a��a��C�������a��C��a���a�?�c�
�Q8��Q;�@�a��A�a��B�a��S)�a��a��a��a�i����a��PInfo�>�1decl��	�
��a�?�c��
5�
�	���i�Q:��/�]��QA���QG���
P���a�?�c��
5�
�b��b��bquotientlift_on�#�#����	�X�b�QG���b �
P��a���	�X�
P�	��quotientrec_on� �#���	����QA��������Q����b1�
P��QJ�b0��b0���
P�b0�X������Q��g���
P�������RB����	�
�	f�b!�Q������Q����bC�b�>�	�
�/	�PInfo��1VMR�_lambda_1VMR�_lambda_2VMR�_lambda_3VMR�_lambda_4VMR�_lambda_5VMR�_lambda_6VMR�VMC�K�1�
P�P_freshu�S��P_freshu�S�VMC�L�1�
P�V�K�
OVMC�M�7%���P_freshu�S�VMC�N	�7��Y�V�P_freshu�S��M�
>VMC�O�A�D�P_freshu�S�VMC�P	�@�J�V�O�
O�\VMC��1���
��?��P�Nlistis_setoid�[rec_on�L�
O�[lift_ondecl�equations_eqn_1�	�
��a�?�c��
5�
�b��b��b���b��	�
�/	�b`��a�?�c��
5�
�b��b��b�5��b�bn�PInfo�e�1ATTR����eEqnL�eSEqnL�declquotientfin_choice_equ_1u_2ι�a_inst_1�c_inst_2�
5α�b_inst_3�bf���bg�bj�����bi��U������Q����b�j�a�k�c�l�
5�m�b�n�b�o��	q�QA����	���QG���b��
P��a���	���
P�	�
P����b/����QA����b0��Q����b��
P��b6��b0�b��
P�b0�
P���������Q��'��7�
P��b�����RB�p��U�������bL�����b�b������QA�bS�bV�bh���g���bC�p��U������bW���b��b��������Y�b��b��Q����b��
P��QJ�b���b��b��
P�b��b��J�b��Q�����RK���b��
P��b��D�������b[�����bC�b��S���6�S�c�Q��7�b������b��c	���b��b��Q��c�c�b��c	�"�b��"�QA�����RK���b�e_1���QA����Q���b��$�QA����^	��
P���$�QA��
��R���
P�
�e_2���QA����^���
P���W��QA����V
��
P�������c=��c@/	�X�c=�$�c=���/�c@�b��c�5`�b��b��b��Q��b��b�i�h�b����b��X���b��c�b�f�caa������]��������4D�^Gb����a����b��_��
��S����^���
�o�
��_��S�cy�^	���cx�
P��QJ�cw��cw�_��
P�cw�c2���c.�����b��b��5��J�b��QA�b��b��b��b��c]q�QA�b��b��y�QA�cl�RK���ck�
P��QJ�cj��cj�^G�
P�cj�c&e_1���QA�cr�Q����cq�
P��QJ�cp��cp�_��
P�cp�c,�v��cy�c.�v���
��^t����o��
�`�c4e_2�������^�����o���`2�c=c�w����^����
��o�
���`B�x��
���^����c�o�c�
��V��
��S��c��^����o�o�o�c�`c�S�c��S7��c�c��
P�c�QJ�c���c��`c�
P�c��
P�t�N����QA��o�N��V?�VR�
P�o�B��j���Ze�QA�c��S��
��c��
P�
��QJ�c���c��V��
P�c��c���y�d�z���QA�c��c���c��b��o��_���t�o�t�o�X,�c��V?��o�d�
P�o�QJ�d��d�X,�
P�d�
P��P��	�d(/�X���d�QA��t�P�V��V��c���v�d4�w��t��_X����o��t����G0�x����S��������������o����Xb�
��S�����Te���G����G����G��o�G����[g�S�dX�W�����dW�
P���QJ�dU��dU�dV�
P�dU�
P�G��H����QA��G��H��W��Xa�
P�G��G0����	/�Ze��c��QA��c�B��S7�Vz�
P�c�B��v�d��{����c��c�/�d,�d)�dx�5��QA��
��B��S�`1�
P�
���b�c��d��d��X��d��v�d��w�c��x�d�
��S�d?�S�d?�V���t�d>�
P�t�QJ�d;��d;�d=�
P�d;�
P���N����QA���N��Wo�X+�d"�����5��d�	�/�c^�����c��c^�<����]�_x�	���QA����cg�D�RK���d��
P��QJ�d���d��D�
P�d����b-�Q��]�����QA����a���Q����d��
P��a!��a���
P�a�D��Q��R���/����^"�U����bK��/�p��U��������Q��d��d��t��u�d��X�	l���a������b�����U��X�b��b��c��b�quotientlift_on_beta�h�i�.�b��b��b��b��b��c]�b��b��5��b��b�����QA�c�c�c�c�c	quotienteq�.�c�csetoidrefl�.�c�c�bC�PInfo�g�Cdeclfinsetprod_attach_univ�����a����_inst_1��_inst_2��f���a�:�finsetprod6��x/�9��6�/�(x�e_���e]/�(x/�:����/��:(��a�����������eY���e\��prod_bij6�e_/�ed�(�ef�erx�e__x�{�-����/��d�e���e��6����������:�_x�e__x�e��:h�e�_x�e__x�e�����8	�q����:��e��e��������e������e��e�8���"��"�e_1���$��$�e_2���
�K��������e�/	�T���$����/�e�88�E�8�e�8��i�e��������/�e_1�S�����Q�����c�7�L������
�ct��	��e�subtypeeta��e��e���e����/7�8�9��a₁�e_a₂�e�ha₁�{�i�e��d�f��f�6��� ha₂�{������/��d�f��f�6���F��N�����e��f	�m�L����e�/�������f%������e_���e����f���f���{��f�d�f+��f+�6��������Y�f�f5	�m���
���
�R��>g���c��/�>���fMa/b�emx�e����f��N�f�f�f	�qa��e��>�fM�
�e_���e����f��1��z�f�fd�m�f+	�fa��/�e_���e_�f$���e_���e���m�e��e��m�f	���e_�fs�e����e��f#���e��f}���e����=�f
�f"�=����1��fd	�fe�fi	�>���f������f
���f�f	�f����f}��f
��α�as�!6x�6���{�6:��	�"��d�f���f��6�	�6�	�� ���=�f��f��f��f����f��f}���f}��f����f����f}��>���>���f!�f���f����f��������/�fP���-�em�fm�fasubtypeforall/��/�9������f��f~����/���9����f��1��fd���e�	�fg�fi��e�	�R��/���>�9��>��� ���f��N�f�f��fS�f�Q�e�/	����g������e����e���3�fS�f�f��-�e�/�c�����/��������e���g�>�9��f��-�9����>R���g!��g�g+��9��g$�g*����-����g
���e���2��fg�fi�f��-������������g!�f���em���f�����fx�fz�f��-���F�����	�����������/���2��fd�f��gB�f�	� ������>�/��>��F��3�f�gc�g�f�����2����gv�>�/��gf�-�/����H/���gx��gu�g���/��g{�g������e��e��g��m�f�e��-�f����g~���g����������	�inj_eq��e��g��g���gx��imp_self���G�$��t�$/�9b/_x�9����fa�f���f�fha�g��3�fQ�q�e��:h�����f�g��f	���g��2��fd���f	��	�������g������g��g����g����y�g����-�g����f��g����t�u�g����t�u�f�g��f��e_1m�u�f0��f���f3�����u�{�f�d�f��f�Q�f/����/�6���c����	���h�g��g��w3�g���g����x�g��2�	�x�g������g���h����	��g��y�g��y�g����g��7�g��g��g��9�PInfo���PATTR�����ATTR��������ATTR��������
Strsum_attach_univ��
Strfinset��declfinsetsum_attach_univ�����a���������������e\�finsetsum6�e_�ed�ef�hF/�(�er��a�����������hE���e\finsetsum_bij6�e_/�ed�(�ef�er�e��e��e��g��h8�PInfo���PATTR�����declfinsetrange_prod_eq_univ_prod������_inst_1��n?f�?���?	�range�k���J�M?�Q�M?�T�M?finfin_to_nat	����������?���hk�iu_2�h��hr���0��?	���hp�h�k��hk�W�J�q?�Q�q?�T�q?�hza��ha�W�	����q���}��?�z?��?�J�	n�?�Q�h�?�T�h�?�hz��ho�k?hk�	�/�����h��z�h����h��	w����h��i����h��J�	n�?�Q�h�?�T�h�?�hz��	w�	�ho��������h������h��	�	����h��h�	�h��h��A� .?�h��$?�$?e_2���$�h��$�h�e_3m�h����h����h����h�/	�.�$�h����/�h��h��h�	��coe_mk	��h��h�y�h��h���h��h��mem_range�	��h�����h��9a��ha�W�h����q���}��/�h��i.k?hk�h����h����/���h��i5�������i7�����i7�/��j�j���"��"�e_1�e��$��$�e_2���
��K�c�����c��iG/	�T��c�>��/�iG�i5�j�?�?e_1���7?�	��h�	�i
�i5�j�ij��i?���e���j�9�������M�������x�|�n�h��h�	��m�h�/n�	��/�i������i��i��0�i�_a����m�	n��/���i��i���i��i�fineq_iff_veq�/k?hk�h��ho	�
��q���q���}���}n�h��	w���h��ho�
�0�i�_a�����h��ho/���i��i���i��i��i�����i������i�n	�J�v?�Q�v?�T�v?�hz/�	w/	���i��h�/�0�i��������h��h����i��i���i��i��i/	��q���i��:�PInfo���UATTR��������ATTR��������
Strrange_sum_eq_univ_sum�hCdeclfinsetrange_sum_eq_univ_sum������������?���hk���?	�hp���h�����������?���hk�h��j�jfinsetsum_bij�0��?	���hp�h��h��i,�i�i��j
�PInfo���Udeclperms_of_list_main_meta_aux���a_inst_1����B�A��perm	��a������B�
R	����A�j5�b�2�j7�Q��j6��j6���j6groupto_monoid�j6��permperm_group	�Qb�j6a_hd	a_tl�C�jB�A�j5/has_appendappend�jV�Ghas_append�jU
�j:RecFn��/�
Qbind/�jUb/listmap�j5��jgf�jg���j5����jk���jk�jI�jk�jK���swap�2����j]�/�PInfo���gVMR��_lambda_1VMR��_lambda_2VMR��VMC���iE���P_freshw���P_freshw���P_freshw������VMC���i)���P_freshw�����������Gmap_mainVMC���g�����
�������Gjoin_main���Gappend_maindecl����j:��a������Blistbrec_on	�j?���_F�below�3��C�jV��V��j������A�jk�
R�3������j����Q��A�j5��j���j������A�j5��RZ�jB�j��Q��j��jE�j��jG�j��jI�j��jK��Qb�j�a_hd�a_tl�Q���j����Q��A�j5��Rw�jB�j��jX�j��jZ�j��
��3�4��Q��A�j5�
�
��4��
��Q��4�
��4�
���
��R��
��j��
��4�4�
��3�4��R��A�j5�
��j��
��4�4�j��j��j��j��jb��j�����jf�j��j����j��jj�j5��jm�j��jo�j��jI�j��jK��jw��_�/�j���R��A�j�	�j��
�
��R��j��j��
��
�
��R��
��j��j��j���V�A�j5�c�j�	�j��j��k�k�j��PInfo���gVMR��VMC���g�����
����������decl��equations_eqn_1���a�����m�A�j5����Qb�Q��k5�jE�k5�jG�k5�jI�k5�jK�Qb�k5��a�����v�k6���k6�k<�PInfo�
�gATTR����
EqnL�
decl��equations_eqn_2���a����al���m�j>�k8	�Q��jX�j>�jZ�j=�kU�jb�j=���jf�jU�jU���jU�jj�jg�jm�jg�jo�jg�jI�jg�jK��jw����k8/��a�����
����v�j>�kM�j>�kY�PInfo��gATTR����EqnL�decl����j:��a�����k:�PInfo���gVMR��VMC���g�����decl��equations_eqn_1���a�����k7����k;�kH��a������equations_eqn_1�8�PInfo��gATTR����EqnL�decl��equations_eqn_2���a�����
����kS�k�	�kX�k]�k��kb���ku�k�/��a������equations_eqn_2�8�PInfo��gATTR����EqnL�decl��_sunfold��j:��a������B�jT��	���C�jW�j\�k��je��/�j�k��/	�PInfo��gdecllength_perms_of_list���a����l�Bn�o�j6�k�	��	���3natfact����a������a������B�U�	���n�o�j=�k��!�k��o���_F�U���Cn�o�jU�k����k��p��V��U�����n�o�jk�k�����k���V1������U����Q�n�o�j��k���	��k��o�n�k��k��k��k���U����n�o�j��k���	��k��o��RZ��n�l�l�R_�l�:�ll_hd�l_tl�Q���U����Q�n�o�j��k��������
�F��k��o��j���n�l%�l*�Q�	�k��l.�l6���l<�l9�k�I�l.M�����l<�lC��l:_a?��n�o�j��k��
�_��Q��
	�k��o�
�lN�lQ�k����l<�lAlistlength_cons��	���lC�l9�']���l?�k��l?�����lC�lk��k��lg_a?���lQ�k�I�lR	M�lQ���lC�ljnatfact_succ�l?���lk�������lk�����lkn�li�li���l�nI�li�']�l?�li�l��l��.&�l8�l����l8I�l%�l*�l%�j�����j��jj�j��jm�j��jo�j��jI�j��jK�
�jw�
�_��lK	�l��l��l%�j��l��l��l�a�j��%�j�e_1�m�k��9�A�j5�?	�o�l��l7�l���9��l)	� length_append�9�j��l��l��.�H�l��li�[��Q�n�lI�lK�k��lR�[G��
��Q���[K�
���
��R��
���[M�[N��R�n�o�j��k��
����
����c�G�k��o�
��[K�[��[N�l��l��[K�l��l����l�add_monoidsmul?�#add_monoid�l?�li�l��m	��sum?H��listrepeat?�li�l?�m�m	�m��map�9�?��9�9��j�?�l%�l��m��length_bind�9�9��j��l�_inst_1�.�_inst_2has_zero?a�K?�3�m3e_3m�m3���m3?	�m/H���m'�m���m3�m'�m�x��k��lr�mf��?�5��
?e_1����?�%�R��%�Ve_2�m�S���S+�m3�m�o?��m\/	��9�9��o?�%�S+�m3�/�m\�m%�mK��9�mP�m%���lI���
�jf�j��j��j��j��k���_��mK�'�9�9��j�?�l%�l�� ���?���lI�l��mK�����m��lI�l��mJ� length_map�9�9�j��j��l��l��[��R�n�o�j��m�k��o�	�[G�
�
��R���[K�
��
�
��R��
���[M�[N��Vn�o�k
�k��c�Vv�k��o�c�[K	�[��[N�m��m��[K�v�Q���map_const�9�?�lilistsum_repeat?�m�li�l?natsmul_eq_mul�l?�li�lj�l����ljI�l��liG�.add_comm_semigroupto_add_semigroup?�#add_comm_semigroup�li�l�natsucc_mul�l?�liadd_comm?�m��l��li�n�/��li�l��n	�l��/��l��li�li��l����/��li�9�PInfo��kdeclmem_perms_of_list_of_mem���a����l�Bf�j6hx��2���8�jU��//���{�jU�jV�E�jU�k�	��a������a�����E�B�F�j6�G�n?�U�/�E�V�F�jg�G�H���2���n2�j��n4���Q��{�j��j��E�j��l		�E�V_F�k��E���F�jk�G�H���3�n2�j��n4���Q��{�j��j��E�j��k�	�F�jk�G�H���nm�nn/�E�Q��F�j��G�H�
��32�n2�j��n4���S�I�U���E�R��F�l��G�H�
���2��c�n2�k
�n4�c�c�V��{�k
�k�E�k
�m�		�V1��E�R��G�H�
���n��n�/�V�	�I�V��E�S�F�j5�o�G�H�t��2���n2�j5��n4���S��{�n��A�n��E�n��k���[5	�{�n��A�n��E�n���k��o�VN	�G�H���2��
��n2�j��n4�
��
��S�V��I�V6�E�V�F�k
�G�H�o��2��t�n2�j5�t�n4�t�t�[��{�n��A�n��E�n��k��t�W	�Qb�
����n�/�Q��k
�jE�k
�jG�k
�jI�k
�jK�c�Qb�k
�-�o�m�k
/�o
listmem_singleton��k
/�o
equivext�F�F�c�c/�o
x�c���3|�n2���F�F�o�o�n4�o�o��o(�jE�n��jG�n��jI�n��jK�o�������o5�����o5�3|���"�o�"�te_1�[��$���$�G�e_2�\@���H���U��U/	���H�$�H���/�U�o*���H�o�3j�n�����H�o��n��o[�[��Qb��
�o�H�t�3o�n�����o�H�o�od�H�o�o]�H�o���od���o]�o]�ot��ou���ov���oa�V:�Qb�t�ou�����F�t�o[��o~��α�aa����B�E�k;� not_mem_nil�F�t��oy�ovimp_false�ou��ov�o]not_not�o]�o�o[	�o4��one_apply�F�o��o=����o�9l_hd�l_tl�V�G�H�c��2��o�n2�n��o'��Sz�S{	�I�U��o�E�S+�F�n��G�H���2����n2�j5���n4�����U�{�o��A�o��E�o��k����������G��J�	�S0	���n���n��o��3(�3j�oZ�o�o��o�hfa�o�� mem_append_left�F�n���n��jb��n�����jf�o��o����o��jj�j5�G��jm�p�jo�p�jI�p�jK�G��jw�G����G����G����H���H�KZ��o�/�[�E�S��F�o��G�H�G���2��G��n2�j5�G��n4�G��G��T��{�p+�A�p+�E�p+�k��G��[d	�[G��
��S���[K�
���
��S��
���[M�[N�E�Tr�F�j5�H�G�H�H��2��H �n2�j5�H �n4�H �H �T��{�pM�A�pM�E�pM�k��H ���H ���H��K�	�[K�[��[N�pE�ps�[K�x�hx�o��o����mem_of_ne_of_mem�F�G���h�S�����p*�p/�
		�p*�p����S�_a�G����2��H�n2�pK�n4�H�H��p��p����p����Y��o�
hfa'�n��og�og/�p�

�x����2��G��n2�p�n4�G��G��p�p�Xj��p�����\��

����{�p�A�p�E�p��k��G��Xj����G�b�G����W�����p+g�p+���{�pK�A�pK�E�pK�k��H�p��m�pK�jj�pK�jm�pK�jo�pK�jI�pK�jK�H�jw�H�p�����p<�
�p?�Tw�����p��p?����G�a�G����W�����pKa�pK���{�j5�H�A�q�E�q�k��H���H���H �K���m�q�jj�q�jm�q�jo�q�jI�q�jK�H�jw�H�q�������p��q.���p��q�p��jb�G��p+����G��jf�pK�pK�p��p��p��q.�q3�p��jX�p9�jZ�p+�q�q>�q@�A��p+�p9�%�pK�%�qe_2�S�pM�%�A�j5�H��%�A�j5�I(e_3�m�A�j5�I,���A�j5�L���{�qY�qZ���q_/	�8�F�F-�qY�%�qZ���/�q_�p;�
�
�8�F�p+�
�p��qG�l��G��[d����qH�q@� mem_append�F�p+�
�q�q>�A�q�q���q�q?�q-���q?�q�d�G����qH�q�q����H�jf�pM�pM�jj�pM�jm�pM�jo�pM�jI�pM�jK�H �jw�H �pc�
�pd��q-��q?�q���mem_bind�F�F�G��p+�
��q=�t�O{�t�oJe_1���$�H����H+��	���H �d�G��q��i�q�q��jf�q�q�q$�q�q,� �G��(�G����x�G��q��x�G��q+�d�G����q��q��i�q���q�e�q���p^�q��m�pM�q��q�	�
��q+�t�u�q���t�u�T����e_1m�u�T�	������u�T��
����	���q��q��q��h�q�(�q���x�q�q��x�q�q��i�q��q��q���mem_map�F�F�q�q�q$��q��q����q�q��q+���q�q*�-�p����p��q�b�G��q���pK�c�pK�q(or_iff_not_imp_left�p��p����p�hfl�r0���G��r5�p��	/�Tu�p���p��c�p+�p��p��p��p��p����3(�S��p��p���G��rO��rChffa�rQ�p��H�rE��/��n2�o"�H�H�p����1��U�p��ra�ra�U�ra�h�re��injective�F�F�H�H��n2�o"�H�H�n4�H�H���/�p��rQ	�rE���p��p��rG��rE�rE��Uite�F�U�p��rE��=�r��r��G��r���#a�r��H�rE�r��U�rE��=�r��rE�r��r��rE��apply_eq_iff_eq�F�F�H�H��rE��H��r��rE�����r��r����r��p��r��rE�r�a�H�u�He_1�\Bb�H��w�I(e_2�]�]�2��L��r�/	�]�w�L���/�r��r��r��0��H�r��r��p�r���H�rE�r��r��r��rE�H��r��r��r��p��rF�r��r���mul_apply�F�H�rF��rE��swap_apply_def�F�H�p��rE�r��-�F�H�r��r��r��rE�r��r��H��r��rE�r��r��]0�rE�r��r��r��r���r���r��r��]0��]0�r��rE�rE�r��o��H�r��rE���r���r������r��s���r��r��]&�r��r��r��r��r�����r�c���8�r��r����r��H�rE�r��r��{���{��e_1��h�@!α�at�e_4�Fe��/e_5�2��7.���
�{���|����N�r�����/�r��s%��s'����>��������1���s>�s9�sB������sM	������1��s>�sU��v��r��
�s%�
�s'��
���
��	/���r��r��s+�r��H�rE�rE�r��r��r�if_neg�F�r��r�/�H��r��s��r��r��H�rE�r��rE�rE�r��38�s�3H�r����r��c8�F�p+�rL�jj�p+�jm�p+�jo�p+�jI�p+�jK�G��jw�G��[d��p��
�	/�p<�s��q�m�p+�s��s��
�[�pi��[G�G��
��Tr��[K�
��G��
��T��
���[M�[N�E�T��F�qP�G�H�I(��2��I,�n2�qT�n4�I,�I,�Zw�{�qT�qU�E�qT�k��I,���I,���L�Yi	�[K��[��[N�s��s��[K/�s����s��s��s��s��s��
�
�����s��t	�	
�p+�s�_a�p+���p��rG�r���p�����s��t�	(�p+�t�s�mul_assoc�F�p+�s��s��s��
���t	�s��s�equivtrans�F�F�F�G��G��G��s��s��
�
�����t	�t3�8�F�p+�t_a�p+���p��p��rG�rF���p��p������t	�t/��mul_def�F�G��s��s����t3�s��s�equivrefl�F�G��
�
�����t3�tX�t8�o"�G��G��t/_a�t^���p��p��t*�H�H�H�rF�rF���tD���t3�tT��swap_swap�F�G��[d��p����tX�s��s��jE�p+�jG�p+�s��
�
�����tX�t��t9�tT_a�p+���p��p��tS�H���tD���tX�t}�i8�F�p+�t}�tTequivpermone_def�F�G����t��s��
�
�����t��t��t�t_a�p+���p��p��jE�pK�jG�pK�p����t���t��
one_mul�F�p+�s��
�v�p+�
AnnotsufficesAnnot�~Annot�x��hx�p�
hxa�p*�

hfxa�p��p�	�rE
�p��H���h�T(�n2�q�rr��3(�T0�
�H/�
��h_1�t��'��false_of_true_eq_false�����\F�������t���eq_true_intro�t����t�����t��3(�\F�n2�qP�n4�H��H��c��H ��t���h_2�u�t��t��t��U"�n2�qR�n4�I(�I(�o��u
����t��u���t��u�0��I(�u��u
	���u����u�t��t��t��U"�����t��u&���t��u&�v�I(����u&����U"�r��u%�u
�H���u
�I(�����u&���u;�u&�"�I(�"�I,�O�]�$�LF�$�LG�P�m�LK���L����m�L���uI/	���L��$�L����/�uI�u9��s��u2�u5�I(�����u-����U"�r��u%��u4��I(�u
�u9��u<���uu�u;�u^�us�u9�s��um�uo/�I(�u
�u9���u-���2��I(�u	�jj�qR�jm�qR�jo�qR�jI�qR�jK�I(�jw�I(���I(���I,�Y���u
�o���uv���u��u��us��uv�u�I(�u�I,�v�uC�w�LF�w�LG�x�uF�uH�2��L���u�/	�uP�w�L����/�u��u��us�u�u��u	�u���un�u����I(�u
�u3�u��u
�I(���u��u��u�u��r��I(�u��o���F�F�I(�I(�u��u�	�r��I(�u���u
����u-�o��I(�us��Annot�~Annot��1��U�t��rE�\��h�v�rm�Annot�~Annot�h�[�����p��r�		�����v�8����v��U���8��v�p����v�r��v��r��v�r��rE��v#�r���v$�u��H�H	��r��r����swap_apply_right�F�H�p��rE	��s�����v����v���]6��8�Annot�~Annot��1��3o�p��p��3o�p�/h�vX�rj������p|��	�PInfo�D�pdeclmem_of_mem_perms_of_list���a����l�Bf�j6��{�j=�j>�E�j=�k�x/��2���n2�jg�n4��	��/��a������a�������B���j6��v��nL���V���jg��{�jk�j��E�jk�k������3�ni	�n~	���V_F�k��������jk��n]�l�����3�n2�j��n4��	�R�/���jk��v��n_���Q����j���{�j��j��E�j��lK���n����R����l���{�j��j��E�j��l����c��o��o�	�Sz/	�n����R���v��l����V����S���n���n��n������o��o�	�U/���o��oa�[�/��{�l��l��E�l�	�k���V�V����V6���V���k
��n��n����t��n��n�	�n�/�o�����c��o��Sz�o}
��S�k
/�o
�����o�od���o��n��n��jE�n��jG�n��jI�n��jK�t�oc�����w�w*�t8�n��_a�n������t��n��oh�n��Qb�����t��n��w4���w�o2���w*�������w*������o���t��n��n��jE�n��jG�n��jI�n��jK��w4�
�o���t�����oo���o�w)���o�����o���w)����������w(�o~�������w(�8����wi��3j�8��wi�n��wn�u�t�u�e_1�S��w�G��w�G�e_2�]d���H���2��H��wx/	���H�w�H���/�wx�w&�o��t�v�t�o����wm����wm����t�8��o���>���>�������E`���w��-����������R�o�����$�o�9Annot�~Annot����o�m��V��o���w��o�o�A��k
�k�$�n��$�n�e_2�S�n��$�o��$�p�e_3�m�p9���p����p����w�/	�qf�pK�$�p����/�w��n�//�qz�k
/�w��o���c�Vv��o�o�ol_hd�l_tl�V��o�m��V����o����S+���n���n��n�������p��p�	�\�/�o������t��w2�n��S��/orelim�o��n��o��jb�t�n�	���t�jf�n��n����n��jj�o��jm�o��jo�o��jI�o��jK���jw���������G��[d��p�x �
�o��jX�n��jZ�n��n��xA���x#�xB�q��n���n��xAh�x#x�hx�p�\����[���Tf���p+��p��p����H��pL�pQ	�pV/��[G�G��
��Tf��[K�
��G��
��Tr�
���[M�[N���T����pM��{�qP�qQ�E�qP�k��H����H����I(�K����I(��s��s�	�s�/�[K��[��[N�xe�x��[K�	h�xBx�hx�p_a�p��d�G����p��i�p��p���q8���pK�q�q ���H���H �xs�	�p����G��d�G��q��i�q�q��q����q�q��q����H ���H��u��
	�q���q�x��T��T����`�G�h_1�x��^�q��i�q��p^�
��q����pM�jj�qP�jm�qP�jo�qP�jI�qP�jK�H��jw�H����H����I(�s���q������q��x��T���T��
�h_1_w�q�h_1_h�x���_a���qP�e�qP���{�qR�qS�E�qR�k��I(�u���m�qR�u��u����I(���I,���L���LF�Y��/�o�Y(��Y*���
�xn�c�jf�qP�qP���qP�y�xt�
�y	�r�qP�qP�y�c�y���y	���qR�e�qR���s��s���m�qT�jj�qT�jm�qT�jo�qT�jI�qT�jK�I,�jw�I,���I,���L���LF���LG�Y{�
���t�����qR�yA�YF��YH�
���`�qRh_1�y@anddcases_on�q^�E�qY�k��L�x��
��m�qY�jj�qY�jm�qY�jo�qY�jI�qY�jK�L�jw�L���L���LF���LG���LK�Y��c�������yS�ym�Yf�
�Y��o�ch_1_left�ySh_1_right�m�j5�LF�jj�yx�jm�yx�jo�yx�jI�yx�jK�LF�jw�LF���LF���LG���LK���L��Z�o�	�����Y���Z��t�o�3(�m�LG��t�LF��t�y�hxa�y����Yx��Y���t�������y������y�� ��Yx��t���y����uD���y��y��y��y��y��y��A��LK�Yu�$�L��$�MMe_2�m�MQ�$�Z�$�Z:e_3�m�A$���A%���{�y��y����y�/	���y��$�y����/�y��Yw���y��y��v�Yu�y���y��y�� mem_cons_iff�h�LK���t�A�y�����y�����LK��y��y����y���y���� ��y��9����y��3(�uD���LG���y�hxy�z�Q��L����
�����Y��
���Y��
������z�z�	
�L��
�_a�L����Z�c���Z�����z�
�����z�zg�j5�L�hg₁�{�j5�MM�A�z4�E�z4�k��MM���MM���MQ�Z$��hg₂�m�j5�MQ�jj�zB�jm�zB�jo�zB�jI�zB�jK�MQ�jw�MQ���MQ���Z���Z8���y��y��G���H ����m�Z�t�H����m�Z8��cy�y�hy�y��E�y��H hy'�{�j5&�A�zj�E�zj�LF�jf�zj�zj���zj�jj�j5'�jm�zt�jo�zt�jI�zt�jK�zs�jw�zs���zs��(��)��*�z��I,	�k��zi���zi���zs�zs�H������zt�e�zt���{�j5�z�A�z��E�z��k��z���z���z��z��I,�m�z��jj�z��jm�z��jo�z��jI�z��jK�z�jw�z���z���z����z���+�z��L�LK�`�z������{�j5�z��A�z��E�z��k��z��z��L�m�z��jj�z��jm�z��jo�z��jI�z��jK�z��jw�z����z����z����z���,�z��LF/�L����{�j5�z��A�z��E�z��k��z��z��LF���m�j5�z��jj�z��jm�z��jo�z��jI�z��jK�z��jw�z����z����z���-��.�{	�LK�	�MQ����m�z��I,�L�����m�{�L����j5�{	���{�j5/�A�{#�E�{#�k��{"���{"��0�{+�MQ���m�j5�{+�jj�{3�jm�{3�jo�{3�jI�{3�jK�{+�jw�{+���{+��1��2��3�{A�Z8��zi����m�{?�L��y�����m�{@�MM�
��[���A�{A���j54��{�j55�A�{]�E�{]�k��{\���{\��6�{e���{e��2�7�n2�j5�{m�n4�{m�{m	�{8�A�{x�E�{x/�y��[G�{A�
��{Y��[K�
��{A�
��A�{Z�
���[M�[N���A�{e���{o��{�j5�{x�A�{��E�{��k��{x���{x��9�{����{���2�:�n2�j5�{��n4�{��{�	�{;�A�{��E�{�/�[K�y��[��[N�{��{��[K�Z8/�MQ���2��{A�n2�j5�{A�n4�{A�{A/�MQ�MQ�{��{��jj�{��jm�{��jo�{��jI�{��jK�{Ahas_invinv�h�{�groupto_has_inv�h�{��{��jw�{A���{A���{Z�{i�zi�c�z��MQ�MQ�����{��{��t8�{�/_a�{����2��{Z�n2�{[�n4�{Z�{Z��Z�Z�{��{��Z�Z���{��{��-�m�{�/�{��|�{��{�/�z�eq_inv_mul_iff_mul_eq�h�{��{�/�{��z�	���{��{��{��{��{��z��MQ�MQ�����{��|&�	
�{A�{�_a�{A���{��{��jj�{[�jm�{[�jo�{[�jI�{[�jK�{Z�{��{[�{��{[�|1�jw�{Z���{Z���{\���{e���{m�{m�zs�o�z��Z�Z�{��Z���{��|$�r��{A�{��z��MQ���|&�{��{��{��|#�MQ�����|&�|a�{��{�_a�{����{��{��|F�{��z��Z�Z�{��|�|i�Z���|&�{���swap_inv�h�{A�{��zi�c���|a�{��r��m�{A�|#�zi���{A���{Z�{Z�|#�zi�{A�c�r��|��c�|��c�{A�zi�|#�MQ�����|a�|��|+�|__a�{A���{��{��|E�|i�Z�|O���|a�|��r��{A�{��zi�c�|#�3(�|��{@�|#�zi�|�h_1�|����{��r��m�{Z�|i�zs���{Z���{\�{\�|i�zs�{Z�o�r��|��o�|��o�{Z�zs�|i�Z�{��o�Z�����|��|��u�{Z�u�{\���m�{e�w�{m�w�{x���m�{����{����{���{�/	���{��w�{����/�{��|��oif_pos�h�|��|��{Z�o�|��Z�Z�v�{Z�Z�38�|����|���|��o�Z�������|��}���|��3H�}���}�|��Z�o����}�}���}�}_h1�}�	(�{\�t�Z8_h2�}�}�Z8�t���}����|��|��{��|��Z���|��}/�|��|��s��|��|��{Z�o�|��Z�Z�|��3(�|��{A�|i�o�}/h_2�|����2��{\�r��m�{\�n2�{]�n4�{\�{\�z��Z8�t�{i�}L�t�{\�z�}L�Z8�}E�z�Z8�����}W�}Z�u�{\�u�{e���m�{m�w�{x�w�{����m�{����{����2��{���}g/	���{��w�{����/�}g�}U�z�|��}N�}Q�{\�z�}L�Z8�Z8�v�{\�Z8�38�}Z���}Z��}F�z�Z8�������}Z�}����}Z�3H�}����}��}F�Z8�z����}��}����}��}�_h1�}��	(�{e�z��y�_h2�}��}��y��z����}�����|��}X�}E�}L�Z8���}\�}��}}�}L�s��}N�}Q�{\�z�}L�Z8�Z8�}��38�}����}���}M�Z8�������}��}����}��3H�}����}��Z�o�
����
�����/	�	�y�
�p��jb�G��p����G��jf�p+�p+���p+�p��p����H���H�pc��q�x��q��G��p���~9		�PInfo����declmem_perms_of_list_iff���a����l�Bf�j6���v�x�n>��a�������B���j6���v��~kmem_of_mem_perms_of_list�!mem_perms_of_list_of_mem�!�PInfo����declnodup_perms_of_list���a����l�Bhl�����j=�v���a������a�������B�����U����C�������jg�k������C_F�U�/���V�������jk�v�����������������l$���Q���������j��v��V1����Q������
���n����R���������j��v����l��w		���~��Qb����U����R�������~��w�Qb�
�����j��m�Qb����~��������~������~������~�����{�j��k�E�j��jE�j��jG�j��j��Qb�j��~��~����~��~��Q��j��~��~��~��3�k�3�l�e_1�m�j��l��k��	���k
�~��~��w���_���~��~���nodup_cons��j��~��~����~������~��������~�����~����o��j��~����~�����~���α�a����Qb��nodup_nil�j�j���9l_hd�l_tl�R����~��R����V����R������
��~��m��Q��	���~��l��Q��
�	
hl'�.	

hln'�~��m�

hmemlf�n���v��n���3o�n���
�����n��n��S{���I�xG�B�x&����t�x)���n��x2�x3�o���n�������M�]�	
�n��L_a�n������n��n��S����d���M�\�l��t�W�����]���I�B���I�[��disjoint�j�n��B�[�����]���0�]_a�����d�jX�n��jZ�n��X�p�����p���o��p�p���o�����]����]��listnodup_append�j�n��B�[�����z����x�tH�S�����o��p���o��p��	����pairwise�j�ta�tb��}�o�����������������0�{_a�������d�X���d���}�n��X����������������{��listnodup_bind�j�j�t�n���Z�����z����i?j?h₁�	�preorderto_has_lt?�1Q�o���h₂��	�}�p+�~,���p+�p��p�����H�
/lt_trans?�1Q/�o�H�
	�p?��~,���p+�p�����	�������������0��_a����������������S�����p�jf�p�p���p�s��s��
	�p�������������}�p��+��#���p�s���$��*���������/���������������pairwise_iff_nth_le�j�t����	/�y���	/�����	/����_x�t_x����nodup_map�j�j�o��o�����_x�o�_x�p�
�s��s��s�left_cancel_semigroupto_semigroup�j�p+groupto_left_cancel_semigroup�j�p+�s���$��l�s�mul_left_inj�j�p+��g��ki?j?hj��hij��x�p+hx₁�p��q8���pK�q�q!����H�����/�o�H�	�p��
hx₂�q�q����q�q��q��
����H ��/�q�_a���pM�e�pM���xo�xt�
��m�qP�x��x��xs�c���H��
�������o�H��
�/����qP�e�qP���x��x��c�x��u��u��o���I(�c������o�I(�c��/�
�x�������`�qP�a�����_a���qT�e�qT���yN�yQ�t�yU�y^�y_�x�����L�t������
�s���jf�qT�qT���qT����s��o����r�qT�qT��������
������qY�e�qY���{�yx�A�yx�E�yx�k��LF�y4��yy�y��y��y4�����LF��
���
���qY�����`�qY�a���D
hix�y��n2�j5�LG�n4�LG�LG��G����LG��������o�LG����


hiy�uD�n2�j5�LK�n4�LK�LK��G����LK�G���
�2��m�z3�jj�z3�jm�z3�jo�z3�jI�z3�jK�L��jw�L����L����MM�Z/�H���L��G��c���c�
��o�L��G������K��Q��S�
�����0��z3��_�
��e��{�z3�A�z3�E�z3��k��L���O�G���`�
��	(�z3��e�
���q��u��B��e�
	h��fne_of_lt?�1Q�o�c��
���MM�H��?��?���
�o�Z�H ���
�o�Z8�H���m�y����y��I(���	�
1��nodup_iff_nth_le_inj�j�MM�H���o�c���o�c�o�MM�H��
��
����m�MM���MM�H�o�������c�
�����n2�z4�n4�MM�MM��H��������������	
�MM���_a�MM���y����MQ�H�t���t�o�o�MQ�H�
��c����o�c�y�������������	(�MM������	������������������������������_a�MM���y��n2�zB�n4�MQ�MQ��H ���������������v�MM���Annot�~Annot�����A�uD��9�jj��5�jm��5�jo��5�jI��5�jK�LK�jw�LK�y��G���@	�G���@������A��&�t8��5�_a��5���uI�n2�z3�n4�L��L��
�H��b�uI��0�H��b����A��"�t���5��"���{��5�A��5�E��5	�k��LK�y��G��m��5��"�����&�uD��9�� ��9	�G���@������&��]�	
�LK��$_a�LK���uI��0��e�H��b�uI��b����&��[�r��LK�� 	�G�����]�uD��X�G���@������]��{��b��Z_a�LK���uI��0��c��0�H��b�uI�����b����]�G��Gf���L��P����{�uD��@��@������{�����b��y_a�LK���uI����H��b��j����{��@��swap_apply_left�j�LK�y��G���@�v�LK��@Annot�~Annot�����4�y���%�jj��!�jm��!�jo��!�jI��!�jK�LG�jw�LG�yb�G���3/�G���3������4����t8��!�_a��!����<��>�
����
���o�LK�G��
��uD��9�G��������4����t���!������{��!�A��!�E��!/�k��LG�yb���m��!����������y���%�����%/�G���3����������	
�LG���_a�LG���uD��9���������G�����uD�����������r��LG���/�G������y����G���3��������)��
��_a�LG���uD��9����9��G�����uD��/��������G��X������������)�y���3��3������)��H��
��'_a�LG���uD��/�G����������)��3����LG�yb�G���3�v�LG��3����
�p^	�q����pM����pd�����r�pM�pM��r	��tf�n�hf₁�x
�Xhf₂�o��jb���o��������8_a�p��d�G����W���i����p�/�q8���pK�q���	����x��d�G����W��
�i����q��q����q�q����	����
-�q������`�G��a����x��q���i����p^��q����pM�x������t�a����������h_w���h_h�����_a�x��e�qP����x��u����/����
�xn��y���qP����������y��������
0����y"�e�qR���y#����y'�y0�y1�s��t���
0�yC������`�qR�a����D
hgxa�]�n2�qY�n4�L�L�{��qY�{��qY�yZ��

hxa�2��LF���
���Y��G������LG���
����Z��G������������~��LG�G�����4l�LG_x�LG�Yy�G���%�{���!�{���!�����G��~s�LG�yb��������������������	�����2��LG��%������+���������/��2��
��-_a�LG���2��LK��9/��9�{���5�{���5��/���@��8��@����/���apply_inv_self�j�LG�����2��1�G�������2��U��
��_a�LG����8���@��[����2�G�Annot�~Annot�h�m�LF���������G��Annot�~Annot��rj�L�L�
�������]�n2�o"�L�L����
����������������������	
�L����
�_a�L����p�n2�o"�LF�LF�n4�LF�LF��n2�yx����{��yx�{��yx�y~	�����������������
�������]����y^�������������������t8�qY�
_a�qY���������p�����������������t��qY����
��yO����yU����
����������������������]�������L���LFe_1�y����LK���L�e_2������MQ���y���y�/	���MQ�M\�/�y������0��L������������������������������r��L�������u��L�L�������M�L��v4�L�x������v�L���������L��9����
�p�	�~)����G��~,���p+�p���������~?	���OAnnot�~Annot�f�n�hf�C�
���F�F�o��F�t�D��1���f�S����~s��[5������q�����
��|�f����z��}�~�����Annot�~Annot��[���S�����o�I�v��[G�c�
��S��[K�
��c�
��S+�
���[M�[N���S���������!�p��[K�[��[N�������[KAnnot�~Annot���nodup_of_nodup_cons�j�
�		�PInfo����declperms_of_finset_proof_1���a����l�Bhl�
���~��k�����/����a�����
A�B�
B���nodup_perms_of_list�!�PInfo�
@��decl�
?_proof_2���a����a�Bb��hab�<��C�<��C��heqa����	a�	�	�d�jk�
B������jg�a��A�jg���jg�a������a������a��jg�~��������
J�	�
J�	�	����
B�	������~�	��	��a�����
E�B�
F���
G�����hfunext�l����	�
J����d�jg�
J�	��+����!�l��	����������^*�V��	ha���hb��_x�"O��������]�/��>��@heq_of_eq�l�d�j����j��a��j����j��a��j���N�a��j���N�a��j��l������	��	��L��W�l/��\/�-�m��J��_��f��j����nr�d�j���j����j��a��j����j��a��j���s�a��j���s�a��j��k�������	����p��q��|�k������	���j���_��f��������������������j���j����{�j��d�j���j����j��a��j����j��a��j�����a��j�����a��j��l*������l)�/����������l*������
�j���j������fs�j���j������j�����j����������������v��v�������������������������3����v���
���������n2�j��n4�
�
	�R������nu��}�������nr��s���j���~�����������>�j���~�����������mem_coe�j���}�����k��_�����mem_perms_of_list_iff��	��������������������������Q������Q���o��������!��$�`mem_of_perm������������������������������:��������<��:��������?������B�����������B��?��	������������<����������;������� ��$�����$��(����$�������3������j������8�j��9�PInfo�
D��decl�
?���a����s�e�d�j6��a�����
S�equotienthrec_on�l����_x��_a�
�d�jU���
A���
B�
�����jU�a��jV���jU�a��jV����a��jV����a��jU�k��
@�/�
D�	�	2		�PInfo�
?��VMR�
?_lambda_1VMR�
?VMC�
X���
B�
A�P_freshx�]���VMC�
?���
S����
X�a�[hrec_ondecl�
?equations_eqn_1���a�����
S�e�m����
?�	�����a�����
S�e�v�������PInfo�
^��ATTR����
^EqnL�
^SEqnL�
?declmem_perms_of_finset_iff���a����s�ef�j6���v��d�j=��j=����!x��n;�.��a�����
`�ef�j6�cases_on�
`�J���n@�����jU���/���
b/��v���	s_val��hs��quotinduction_on�n���
d�
e���
f��>���nZ��J��j�/�����	�����
b���3�ni��e����	l���
f��>���������]�����������l)/�PInfo�
_��declcard_perms_of_finset���a����s�en�	M�j6����k��k��	M	��a�����
k�e���	�
k�}n�	M�j=����k��.s_val��hs�������V�
�
l���
m�	n�	M�jk����������k��4���?l�V�
m�	�
elength_perms_of_list��������	��PInfo�
j��declfintype_perm_proof_1���a����_inst_3����j6����������a�����
r������`��������`������j6��j=�������(�
�j6��j=�����fs�j6��j6��_��j6����j6��������������9V����}�
b��n;�-���9V���|���mem_perms_of_finset_iff�!�����
b����9[�
b����������n9�������n;�:������o�/�n9��:���9�	�������$����9���R�j6������s�j6�9�PInfo�
q��decl�
p���a�����
r���b�j6��a�����
r����j6��#�{�
q�	
�PInfo�
p��VMR�
pVMC�
p���
r����
?decl�
pequations_eqn_1���a�����
r���m����
p�	�����a�����
r���v�������PInfo�
u��ATTR����
uEqnL�
uSEqnL�
pdecl��fintype_proof_1�����a����_inst_3��a�
6�	n�
7�$66�
�v����a�����
x���
y����"�v���PInfo�
w��	decl�
v_proof_2�����a����_inst_4���
y���	n�*�����a�����
{���
y�������PInfo�
z��	decl�
v_proof_3�����a�����
x���
{��h�n�q��x����v�v����v����v�����v�����v����a�����
x���
{���
}����
~���'���-n������866�5/�fintypecard_eq6/�	������5!�/�PInfo�
|��	decl�
v�����a�������
5_inst_2���
x��
{��������a�������
5�
����
x��
{����vn���7��decidable_eq��9��;��1�
}��<truncrec_on_subsingleton8nn���G��	n��	_x����G����5d�
w�����	�
��	�ge�Gtruncrec_on_subsingleton86nn6������	n���	_x��86nn6��[�������
z�����	���	�ge�[fintypeof_equiv66��`�j������r/��equiv_congr7�����tS����	n�2�/�eqrec_on8n77n?���_x?��n7�
����|	����	n����
}���<��v�53�����53��	�53�
|�����	�PInfo�
v��	prt�
vVMR�
v_lambda_1VMR�
v_lambda_2VMR�
vVMC�
����
��P_freshw��]�P_freshw��W�P_freshw��U������
��
p��VMC�
�
���
��P_freshw��X�
��P_freshw��V�
��
�����rec_on_subsingletonVMC�
v��	�
{�
x�
�������o�onatdecidable_eq	�(�
����
�decl�
vequations_eqn_1�����a�������
5�
����
x��
{�����������1�
v�����/	�����a�������
5�
����
x��
{������1����PInfo�
���	ATTR����
�EqnL�
�SEqnL�
vATTR����
vclassfintype�
v��declfintypecard_perm���a����_inst_3��n�	R�j6�
v		�k��k��k������a�����
����4l���_x�b�o"		n�	R�j=�k�������k�����c������j6������card_perms_of_finset	�k��{�PInfo�
���declfintypecard_equiv�����a�������
5�
���_inst_3�_inst_4�e��nfintypecard66�53������g��	�k���E��a�������
5�
����
���
���
����1�_x?���k��1��	R�o"��������g�g		��fintypecard_congr66���53�������t�����tS�fintypecard_perm��g	�PInfo�
���declfintypechoose_x_proof_1���a_inst_1�cp�yhpexists_unique	����6a�9n��a�
��c�
��y�
���8����<��9������<��B�t�
�t�e_1������6���;���x��:�=,�
�����:�s�9������S���PInfo�
���decl�
�_proof_2���a�
��c�
��y_inst_3���
���9�Q	�tchoose/	��/�&#������6/�
�/����������q	������v��x�t��t��
�������(l��	��6���u	� /�/���x/��t�=p�
�/����t�s��������r�����r���>S��������������������a�
��c�
��y�
����
���jfinsetchoose_property/	�9�������PInfo�
���decl�
����a�
��c_inst_2�
5�
���
����
���q�9��-�&"��a�
��c�
��
5�
���
�����
�����:�&"��k�	�:����
���/	�
���/	
�PInfo�
���VMR�
�VMC�
����
��
��
��
��
���tchoosedecl�
�equations_eqn_1���a�
��c�
��
5�
���
�����
�����S����
���/	�����a�
��c�
��
5�
���
�����
�����qz�������PInfo�
���ATTR����
�EqnL�
�SEqnL�
�decl�
�choose���a�
��c�
��
5�
���
����hp������a�
��c�
��
5�
���
�����
�����n�����p�������q������coe_subtype��&"�����	�:��PInfo�
���VMR�
�VMC�
����
��
��
��
��
���
�decl�
�equations_eqn_1���a�
��c�
��
5�
���
�����
������
���/	����a�
��c�
��
5�
���
�����
�����>��� �PInfo�
���ATTR����
�EqnL�
�SEqnL�
�decl�
�choose_spec���a�
��c�
��
5�
���
����hp���	����	�:���a�
��c�
��
5�
���
�����
�����1property��&"���PInfo�
���decl�
�bij_inv_proof_1�����a����f�	f_bij��b	a_0�!�a/�/����6��������	��>	��	��a�����
��	�
����
�	�2���G��N��Ta'/fa_eq_b��F����G����K����G�����^�j������a��e�h�	_a������������/��������l����a�X�h���X	��x��������l�H�y��R����/���/��	�	/��d�
���R����1�����Xa�h�����v��z���PInfo�
���decl�
������a����_inst_1��_inst_2�8_inst_3�
_inst_4��
����
���
�����a�����
����
��8�
��
�
���
����
���
���������������
���/������/���
������	�PInfo�
���VMR�
�_lambda_1VMR�
�	VMC�
������P_freshx�u��P_freshx�u��P_freshx�u�VMC�
�	��	�
��
��
��
��
��
��
�����
��
�doc�
� `
`bij_inv f` is the unique inverse to a bijection `f`. This acts
  as a computable alternative to `function.inv_fun`.decl�
�equations_eqn_1�����a�����
����
��8�
��
�
���
����
���
���N�
��������/	�����a�����
����
��8�
��
�
���
����
���
���v�����PInfo�
���ATTR����
�EqnL�
�SEqnL�
�decl�
�left_inverse_bij_inv�����a�����
����
��8�
��
�
���
���f_bij���left_inverse6�������������������������a�����
����
��8�
��
�
���
����
��a���v	�z	������/��������	�
�choose_spec�����a'�������������������������PInfo�
���decl�
�right_inverse_bij_inv�����a�����
����
��8�
��
�
���
���f_bij���right_inverse7������a�����
����
��8�
��
�
���
����
��b��� a'���������&����PInfo�
��decl�
�bijective_bij_inv�����a�����
����
��8�
��
�
���
���f_bij���6������a�����
����
��8�
��
�
���
����
���	/����������������������injective_of_left_inverse7�����
�right_inverse_bij_inv6����������surjective_of_has_right_inverse7�����c7�5Nfinv�5N�a�����
�left_inverse_bij_inv6���������PInfo�
��decl�
�well_founded_of_trans_of_irrefl���a_inst_1�cr��_inst_2is_trans	_inst_3is_irreflwell_founded/	��a��c������������
�x/y����	��	M��=�z�������z��/�Y����=��
��	������
���Y
subrelationwf������	��������=��
��������
��	�Ymeasure_wf����4��>$�
�������������Annot�~Annot�x/y�hxy��=����������has_ssubsetssubset�S�has_ssubset���������x����������������/�����������������has_lele�S�
to_has_le�S���S�partial_order������������������������S�
�S��
���������������zsymm�����finsetlt_iff_ssubset������������lt_iff_le_not_le�S��
���������������������/��9$��������������4D����9$����/�������
���cn�
��������	�/��8�?�S�A���������P�����\finsetle_iff_subset����������\��Pfinsetsubset_iff��������������O�����������B�/���9����������E�4D���������/���:����������
���4D�s������������4E��������������9u������?�4D���4E����4E���g<���������������������������/���v�����K�4D�s���������������������������������y�4D�����������������������������������������������|�����C��<����cn�
��������	�������Z�����������������b���������������j��������p����������������|��B�������������	/������z�hzx���trans���/	not_forall_of_exists_not�������������	�-���k�H����k��j	not_imp�k��"���k�	/�k��#irrefl��	�PInfo��	decl�
�preorderwell_founded���a_inst_1�c_inst_2preorder���	��	��	��a�-�c�.��E�
�well_founded_of_trans_of_irrefl	��Jhas_ltltis_trans	�2is_irrefl	�PInfo�,�nspace�+decl�
�linear_orderis_well_order���a_inst_1�c_inst_2linear_orderis_well_order	��G��H��	linear_orderto_partial_order	��a�7�c�8��_is_well_ordermk	��his_strict_total_order'mk	��h�2is_trichotomous	is_strict_ordermk	��h��X��f��T��f�
�preorderwell_founded	��f�PInfo�6�nspace�5ATTR�
�6class�:�6
PInfoinfinite�indlu_4αCe_1not_fintype����n�F�H		�F�H�I���Fmk�I�L�������I�J�K����L������nspace�Fprt�Frecgind�F�Ndecl�Fnot_fintype�H�Ic�������I�Q���
Proj�F�N�P�H����Frec�H����L����PInfo�P�ATTR����Pproj�P�Ndecl�Frec_on�G�H�I�J�M����K�L���		�I�J�M����K����Frec�G�H	�PInfo�S�ATTR����Sauxrec�Sprt�Sauxrec�Frec_ondecl�Fcases_on�G�H�������PInfo�V�ATTR����Vauxrec�Vdecl�Fdrec�G�H�I�Jh����K�L����N�H	�M����I�J����K����M�������X������L����_���/���PInfo�W�ATTR����Wauxrec�Wprt�Wdecl�Fdrec_on�G�H�I�J����M����K�L���	���8�I�J����M����K�������L���_���8�PInfo�Z�ATTR����Zauxrec�Zprt�Zdecl�Fdcases_on�G�H�������PInfo�\�ATTR����\auxrec�\prt�\ATTR����Fclass�Fdeclnot_nonempty_fintypeu_1α�a�����cinfinite�^�_�a��������f����N��x���)�!_x���_a����\��	�d���	����L��!����_x���_a��2���e����f����1|�@�f��@���	�@�D���PInfo�]�ATTR����]declinfiniteexists_not_mem_finset���a_inst_1���s�e��x	��O��a�i����j�e�
��\���3
	�k	�Oh�\�gnot_fintype	��PInfo�h�$decl�gnonemptyu_1α�a_inst_1����1=�p�a�q���nonempty_of_exists�ox��#�gexists_not_mem_finset����e� �PInfo�n�(	prt�nVMR�nVMC�n�q�pdecl�nequations_eqn_1�o�p�a�q����
��1=�n�o��7�p�a�q����\�1=��=�PInfo�v�(	ATTR����vEqnL�vSEqnL�nATTR�d�nclassnonempty�nddecl�gof_injective�����a����_inst_1infinite6f�hf��^	���/��a�����y��G�{��H�|��K���/I�2�gnot_fintype6/fintypeof_injective6/�	�PInfo�x�+decl�gof_surjective�����a����_inst_1��Gf�hf����L��a��������G�������d��RI�2��U��/�	�PInfo���.declnat_embedding_aux_main_pack_wf_rec_mk_dec_tactic_aux_1n?m?hm�	�has_well_foundedr?has_well_founded_of_has_sizeof?nathas_sizeof	��?��?����v������sizeof_measure?��{	���	�sizeof?��{���	���	�natsizeof���	�
	����������chas_lt?�$?�$?e_2���$?�$?e_3���.�	������/	�.����	������equations_eqn_1���	���	�PInfo���1prv��_private��	nat_embedding_aux_main_packncomp��decl��_aux_param_0α�	\_inst_1infinite��_x?��?���	\�������?well_foundedfix��?�����}has_well_foundedwf?��|_x?�@_F_y?���}�/�����	_inst�	]/classicaldec_eq��/classicalsome���x���multisetto_finset����������3multisetpmap��?���?�h���?���h��X���multisetrange_x?�
�h��N?��?���/�h�multisetmem_range/�gexists_not_mem_finset���/����������9������?�	���?���������/���	��?�
�����������
�PInfo���1prv��equations_eqn_1��equations_eqn_1decl��_aux_param_0���	\�������?�
&�������		���	]	���	�����������/�:V���/����?������/������ ��	�������/9�����?�	�	��?����O��/�/�����?�
�������O���	���	\�������?well_foundedfix_eq��?�����}�����(�PInfo���1EqnL��prv����ncomp��decl��_aux_param_0���	\������?	���	\������?��2�PInfo���1decl��equations_eqn_1�����	\�������?�
&	����		����4��5��6�������8��:��?������z������ ��I��M��Q��?����O��z�/��X��_���	\�������?����	�PInfo���1prv����ncomp��decl��u_1���a�������s���a����������PInfo���1decl��equations_eqn_1�����a�������?�F����		���8�
�	��������{���:V����?/����?������������� ��0	���L�����P��?����O����/��X��_���a�������equations_eqn_1���PInfo���1EqnL��prvnat_embedding_aux_injective����s6nat_embedding_aux_injectivedecl��u_1α�a_inst_1���functioninjective��?������a����������m?n?h�����	���	_inst�7/�
�/��?hmlen���/�/�1�/ordrec�/���/���������������N���������	n��������?��?��������2�����
	��
decidableby_contradiction�i�	��>	hmn���classicalsome_spec���
����
���S�>���c���c���c���o�_�����cm?�	����?hm��!����t�o���_x?�
���������!������0�
�����
����
����c�l'����
������?���h�����o�c������-�V�>���
�����
���6��I��H�^���P��G��
���<��P��G�-��T��>a?�h���D������
��G?������H����3|��B����o���o��Su�d�t��t���t���t����V����t��?�	����?����p������������?�
���������p������0�o�c���o���o���t�_�����o��?�	����?����������t��+��?�
�����y�������multisetmem_pmap��?�
������D�������P�
����/�����/����H����m�c����c�
������c���c��S*�d�o��o�����0�c�
���3�-����	�/���/lt_of_le_of_ne?�1P/	���2 ����
��/��P�2 �����P�����������3h���_a�
��������������������������2 	���7�
��
��
�������c����������o���t�3�����������c���o9��2��P���������
�3h���_a�
���������/������������������
���v�
����	���������� 
����������6��i��this����;��=n�/not_or_of_imp��:��=����:��?��?�������2�����	��K���������c���c������������"��?����!��������1������� �����?���h���&������-�������Z��c��b�^���f��a��c����f��a�-��j�� ��\��^������
��G?��c�H����3j��&����t���t��S��d��������������l�������q��?����p����G�����y�����0�t�o��n��o�����?�������u��+�������c�����^�������f�
����/����H����3|��A���e���o���j��������W���������f��������f�����������	
�c�����c������o<�������������������	���7�c�
��c��e���o���j��k���t����3������������o���t9��V��f�������������������c���3|��A/�����������������c�
��v�c��������;�2�������
�/�����B����������
���������������9����iffto_eq�����������3���
���3�����
�t�������������=����B�
0�����B��9��9��;��B��9����B����B��9����B��9��/�/��t���9��9����9	le_total?�#linear_order	�PInfo���6ncomp�gnat_embeddingdecl��u_1α�a_inst_1�������?���a���������?��������PInfo���Fdecl��equations_eqn_1�����a������S��p������z���a������qz��p����PInfo���FATTR�����EqnL��SEqnL��declnot_injective_infinite_fintype�����a����_inst_1���_inst_2��f����/���a�����������������hf�/�
H�@
���/Annot�~Annot��r�/	�PInfo���Kdeclnot_surjective_fintype_infinite�����a����_inst_1��_inst_2��Ff�������a�����������������hf��
H����
���infer_instance�b�/Annot�~Annot�infiniteof_surjective6�/	�PInfo���Qdeclnatinfinite_match_1_a�C?�������?��������h���?�i��Dfinsetnot_mem_range_self��finsetsup??latticenatsemilattice_sup_botid?�subset_range_sup_succ�������PInfo��W	decl�equations_eqn_1s�h�hs����
�����F?�����h������\���^������PInfo��W	ATTR����EqnL�decl�infinite?�N?_x�������PInfo��W	prt�VMR�VMC�decl�equations_eqn_1�
���������\�������PInfo��W	ATTR����EqnL�SEqnL�ATTR����class����declintinfinite�����infiniteof_injective��?���intof_nat_x?_x?intof_nat_inj
�PInfo��Z	prt�VMR�VMC�decl�equations_eqn_1�
��������\�����
�PInfo�%�Z	ATTR����%EqnL�%SEqnL�ATTR����classinfinite���EndFile