CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In

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

| 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: 23839
License: APACHE
oleanfile3.4.2, commit cbd2b6686ddb��Ffinitdatarealbasic��zexport_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}traversePInfocomplex
indlCn��e_1rerealim�mk����������nspace�prt�recdecl�sizeofxnat�recx��has_addaddnathas_add"has_oneonenathas_onesizeofdefault_has_sizeof,�PInfo�
ATTRreducibility���prt�decl�has_sizeof_insthas_sizeofhas_sizeofmk��PInfo�
ATTRinstance���class����prt�decl�sizeof_spec��eq9	&��eqrefl=�PInfo�
ATTR_refl_lemma���EqnL�prt�gind��decl�rec�
Proj�������PInfo�
ATTR����proj��decl�imG�
Proj���I���PInfo�
ATTR����proj��decl�rec_on������	���Y�rec��PInfo�
ATTR����auxrec�prt�auxrec�rec_ondecl�cases_on�\c�PInfo�
ATTR����auxrec�doc�A complex number is defined to be a structure consisting of two real numbers,
   the real part and the imaginary part of the complex number   .decl�no_confusion_type�Pv1v2��������i��are_eq;Vim_eqn�PInfo�
ATTR����prt�decl�no_confusion����h12;��V����eqrecah1a}V�h11}���V����l��oB��PInfo�
ATTR����no_conf�prt�decl�inj�����}V	andl�n�������no_confusion��V����andintrol�l�V�PInfo�
decl�inj_arrowl������P��������������andelim_left���inj���Vandelim_right����PInfo�
decl�inj_eq����;��nl��re_1im_1propext��iffintro��h���Va�anddcases_on�n��}���a_left�a_right���e_1���e_2�congr��congr_arg��V���V�PInfo�
TKℂ�NOTAℂℂ��declcomplexetaz}complexre�im����Mz_rez_imid_rhs}�F	�I	�Wrfl�W�PInfo�sATTRsimp���decl�extzw�l�F�G�l�I�I�����e��i�O��l�G�FV�l�h�I���Vz_rez_im�l�T�F��l�I��I��O��l�F��G�l�I��h}���w_rew_im�l�F��T�l�I���~eqdcases_on�Fr�t_1�l�ForH_1��H_2heql�F
	�F�����}�����F��mr�o��l�F��o�F��l�I���I����l�F���F���������}���r����F��V�l�I���I���������F�������������I��t_1�l�I��H_1l�I
oH_2��l�I���I�����}�����I�������������l�F�����F�����I����l�I��I��)�(��(}��4V�l�F���>�l�I��A������D���S���\�reqsymmr��V��heqrefll�����T�o����_l�����PInfo�ATTRext���prodmkboolprodlistext_param_type����name��������boolff������listnil������������listcons��������namemk_string
Strthunknameanonymous��
Strfunext��������
Strmultiset����
Strext'��������
Strulift����
Strext��������
Strarray������������
Strmonoid_hom������������
Strperm��
Strequiv������������
Strring_hom������������
Strset������������
Strembedding��
Strfunction������������
Strplift������������
Strlist�����������
Strvector�����������
Strfinset�����������
Strprod�����������
Stroption���������������������
Strunits�����(����namemk_numeralunsignedof_nat'&����
Strpropext�������-�.has_zerozeronathas_zero��������ATTR��������tt����������
Strcomplex�����Bdecl�ext_iffzwiff��e�r�J����iHeqmpr�l�F�c�itrueid��t�veqtrans��t��v�v�va���e_1�b���e_2��� �������'�������V�r�v�}�r�d�c�va�!e_1�a�#e_2��!����(�#���lV�p�c��e_1�'�F�c�c��c����veq_self_iff_true�c�i�v�}�i�r�h�v���f�h��e_1���I�h�h��h����v���h����vand_self�vtrivialandrec�e�h�ext�PInfo��decl�has_zerohas_zerohas_zeromk�8no_zero_divisorsto_has_zerodomainto_no_zero_divisorsrealdomain�%�PInfo�-�	prt�-VMR�-VMC�-�	�5comm_ring_aux
�7
doc�-notation: `0`, or (0 : ℂ), will mean the complex number with
 real and imaginary part equal to (0 : ℝ).decl�-equations_eqn_1;��-�B���PInfo�9�	ATTR����9EqnL�9SEqnL�-ATTR����-class�.�-��decl�zero_rel�F�8���[��PInfo�:�ATTR����:ATTR����:decl�zero_iml�I��� �"�PInfo�;�ATTR����;ATTR����;decl�has_onehas_onehas_onemk#zero_ne_one_classto_has_one�3to_zero_ne_one_class��%�PInfo�<�	prt�<VMR�<VMC�<�	�7
�7
doc�<Notation `1` or `(1 : ℂ)`, means `⟨(1 : ℝ), (0 : ℝ)⟩`.decl�<equations_eqn_1;�'�<�4B�'�6�PInfo�D�	ATTR����DEqnL�DSEqnL�<ATTR����<class�=�<��decl�one_rel�F#�6�1� �=�PInfo�E�ATTR����EATTR����Edecl�one_iml�I�<�� �A�PInfo�F�ATTR����FATTR����Fdecl�has_addhas_addhas_addmkzwdistribto_has_addringto_distrib�5ring�c�G�Q�h�J �PInfo�G�	prt�GVMR�GVMC�G�	�L�K

�7


�7
doc�GNotation `+` for usual addition of complex numbersdecl�Gequations_eqn_1;�F�G�ZB�F�\�PInfo�S�	ATTR����SEqnL�SSEqnL�GATTR����Gclass�H�G��decl�add_rezwl�F�\�S�U�V� �e�PInfo�T�ATTR����TATTR����Tdecl�add_imzwl�I�d�V�X�Y� �m�PInfo�W�ATTR����WATTR����Wdecl�has_neghas_neghas_negmkzhas_negnegadd_groupto_has_neg�5add_group�G��J"�PInfo�Z�	prt�ZVMR�ZVMC�Z�	�^
�7

�7
decl�Zequations_eqn_1;�v�Z��B�v���PInfo�e�	ATTR����eEqnL�eSEqnL�ZATTR����Zclass�[�Z��decl�neg_rezl�F�y�����g� ���PInfo�f�ATTR����fATTR����fdecl�neg_imzl�I�����i� ���PInfo�h�ATTR����hATTR����hdecl�has_mulhas_mulhas_mulmkzwhas_subsubadd_group_has_sub�}has_mulmul�1to_has_mul��c�G���h�J�Q���J���G%�PInfo�j�	prt�jVMR�jVMC�j)�	�o�n

�7


�7
�calgebrasub

�7


�7
�7
decl�jequations_eqn_1;���j��B�����PInfo�y�	ATTR����yEqnL�ySEqnL�jATTR����jclass�k�j��decl�mul_rezwl�F�������{�|� ���PInfo�z�ATTR����zATTR����zdecl�mul_imzwl�I�����~�� ���PInfo�}�ATTR����}ATTR����}decl�comm_ring_proof_1abc}�a�H�b�������������mpr���l�F���F��l�I���I���ext_iff����������o���v�x����v�}���q�p�v��l�Q�p�S�����������|�F�b�b�Iadd_semigroupto_has_addadd_comm_semigroupto_add_semigroup�5add_comm_semigroup�p��G�c�������c���Q��G���Q�F��G� �T�c�E�#�#e_2��#�#e_3��!�I���.��(�#���.V�P�#��(�G�G��Gadd_comm���Gadd_left_comm��G�p�c�D�p�p��p��S�R�G�c������F��d���e���G�d�b�e�S�(�l�I�add_right_cancel_semigroupto_add_semigroup�5add_right_cancel_semigroup�p�S����add_right_inj�~�S�p�p����v���p���o���v�x����v�}���g�f�v��l�Q�f�V������������I�
��f��J�h���������h�����Q���J�����Q�I��J���W��D�������J�J��J�R���J�Y�J�f�h�D�f�f��f���V�R�J�h������I�l���m�����d���m�V���l���f�V�������V�f�f����v���f���PInfo���	decl��_proof_2a}�b���������l�F��Gl�I��J�������o��v�x���v�}��o�G�v����G��F�b��Q��G�G�1�Q��G�3�(��D���:�G�G�Lzero_add�5add_monoid�G�G�G�L��)�v���G���o��v�x���v�}�l�J�J�v����J��I�/�2�J�J�g�Q�"�J�h����D�"��;�J�J���I�J�J�J����a�v���J���PInfo���	decl��_proof_3a}�b��������l�F���Gl�I���J����������o���v�x����v�}���)�v�����G��F����Q�G��G��������(��D�G�G�L���?add_zero�H�G�G�G�L�T���o���v�x����v�}���a�v�����J��I���Q�J��J�����"������D�J�J���"��t���J�J�J�������PInfo���	decl��_proof_4a}�b���x��add_monoidzeroadd_monoidmk�b������������l�F���F�
l�I���I�
�����
����o��v�x���v�}�l���v������F�b���Q���G�	��to_has_zeroadd_groupto_add_monoid�}�-�Q���G�/�(���D�����f�G�G�Ladd_left_neg�}�G���?��%�v������o��v�x���v�}��%�v������I�+�Q���J�7�h�Q���J�j�����D�����h�J�J���L�J���t�W���PInfo���	decl��_proof_5ab}�d������������f�F���n�I�����d��������o���v�x����v�}�����v��l�S�S�����e�S�w���S������c��c�G���f�l���c�G�������G�c�c�����o���v�x����v�}�����v��l�V�V�����m�V�����V������h��h�J�����l���h�J�������J�h�h�����PInfo���	decl��_proof_6abc}����������������������l�F��F�l�I��I�������
��o�
l�Q����Q���f�c���p�h�J���Q��c���h�G�Q���Q������Q������x��
�8���
�,��F�����I���to_add_semigroup�5�+�#��#�+�D���+�"�K�D�����F�@�G���I�@�J�Q�z�@chas_sub�#�#e_2��#�#e_3��-�����d��8�dV���V�+c���#�#e_2��#�#e_3��-�����z��8�zV���T�)��T���%�'�I�%�(�^sub_eq_add_neg�}�%�'�G�G�L�Z�"���X� ��X�Q������}�R���J�J�����+�"�R�+�#��7��F�?���I�6�1��1�6�����6�0�������������������v���6���p�p�a���5������I���4�^���������0���f�f�����/�������������R�������6�0�R�6�1��,tacticringhorner�5comm_semiring�	�	��1�J&��c&�	�	�G&��h&��f&�	�	�	�1�G&��p&��c&�	�	�h&��p&��7norm_numsubst_into_sum�P�#�+�	�	��f&�	9�	�	#�f&�	2��	;norm_numsubst_into_neg�~�"�	�	�	(�J&��c&��f&�	�	W�h&��p&��	Gnorm_numsubst_into_prod��� �J�	�	(�c&��f&�	�	(�h&��p&��	V�	e�	@���	r��	y�	z�	j�f�c�	(�f&��	o�	�tacticringhorner_atom�	�f�	��ctacticringhorner_mul_const�	�1�f&��	o�	o�one_mul�5monoid�	ozero_mulsemiringto_mul_zero_class�5semiring�	o�	j�p�h�	(�p&��	u�	y�	��p�	��h�	��p&��	u�	u��	��	u�	��	utacticringhorner_add_const�	�	o�f&��	y�	y�I�	y�	��J�	��	o�f&�	y�	V�	Z�	d�	��c&��	V�	V��	��	V�	��	V�	��	u�p&��	V�	`��	��h&��	V�	V��	��	��	�tacticringhorner_neg�5comm_ring�	Z�f&�	d�	C�	9�	��	V�c&��	��	��1�J&��	�norm_nummk_cong��1�1��1norm_numneg_zero_helper�}����
�	��	`�p&��	5��
�h&��	��
�
�
�	j�)�G�	�	�h&��f&�	�	��c&��	+�	M�	@�%�(�
@�
<��
A�	��c�	��	o�
@�	��	�tacticringhorner_const_mul�	�	��1�c&��	�����semigroupto_has_mulcomm_semigroupto_semigroup�5comm_semigroup�	��1�
b�1�	��	�mul_comm�
_�	��1�	��	���
c��
b��	��	mul_zero_classto_has_zero�	��
m��	��	��	R�'�	v�f&��
H�	��h�	��	u�
��	��	��	��	u�	u��	��	��	��	u�f&��
9��
�h&��	��
�
�
tacticringconst_add_horner�	�
@�
9�f&��
@���
@�	��G�	��
9�f&�
@�	+�	#�	L�	��	�h&��	+�	��
S�	�1�G&��	��	j�	�1�	�1�	�
�
norm_numneg_mul_pos_helper�N�1�1�1�	j�1�1�1�1�1�
�
mul_one�	��1�
���	���
�
mul_zero�	��	�	��	+�	��	��c&��	+�	/��	��	+�	+��	��	+�
��
�tacticringhorner_add_horner_eq�	�	C�f&�	9�	#�	L�	$�	:�	;�	��	�c&��	#�	#�I�	#�
��	9�	/�c&��	9���	9��	;�T�7�	;�	@�1�6�	'��	:�	;�	R�0�	�	Y�	,�h&��f&��0�	��/�	��8�<�	��	@�����7�	Z�8�	j�h�G�	u�	+�7�	��
��	��	+�	+���
��	j�c�J�	o�	V�	Z�	��	��	��
��7�	V�c&��7���7�	��8�8��	��8�	��8�	��8�f&��	$��
�7�	�	#�
�	��	+�h&��	��
�G&��	��
�
�
�
�	��5�	��	,�c&�	5�	:�	��	@���4����	5���W�G�	o�	+���	��
��	��	+�	+���
��	R���	`�	5�I�J�	u�	V�	`�	��	��	��
/�	��	+�c&��	5�	5�I�	5�
T�	+�c&�	5�	/�	9��	��	5�	5��	��	5�	��	5�	��	$�f&��	:�	:�I�	:�o�l�Q�!�G�*�J�Q��/��5�x�����������I�B�Q������������Q�U�J�Y�G�����@�D�������J�J���������G�G�L�R���������I���Q�������������D��������/�	��������5������	���f&�	�	W�p&��c&�	�7�p&����	@�����	���f&�>�	6�f&�:��@�	k�G�	z�	+�H�	��
��	��	+���>���	��	+�7��T�
��
5�J�
A�	V�M�
��	��
��	V�	5�L�
��	V�	��
��J&��	��
��
��	��
��	V�7��	��	V�	V��	��	��	�����f&�>�	5�L���?�@���
��>�7�c&��>���>��@�T���@�	@�����?�4��@�	��/�	��8�?�	��h�
T�	V�c&�7�7�>��	��7�7��	��7�	��7�	��5�	������	����	�������	����	����
��?���f&��?���?�PInfo���	decl��_proof_7a}���;�)�<�������l�F���Gl�I���J����������o���v�x����v�}���)�v�����G��F���<���G���I�G���������G��
�������=�G���A�J�
�^�<�v�
�G��
���1�G�G���=�1�E�G�G�L�	��G�
���
����J�
{���A��F�J�J���	��J���G����
�neg_zero�}���G�G�L�T���o���v�x����v�}���a�v�����J��I�����J�
]�Q�
�J�

�G�����<�D�
`�J��
`�
�J�J�
�J�J���	��J�
b���
b�
*�G�
{�
1�G�G�L�	��G���J�J�������PInfo���	decl��_proof_8a}���������
��l�F�
��Gl�I�
��J���
���
��
��o�
��v�x��
��v�}�
��)�v���
��G��F�
��<���G�
��
���
��
�
�
������G�=���J�A�
�^�<�v�
��G��
��
��1�G���G�G�L�=�1�
�
��G�
����
��
���
{���J�J���A��
0�
��J�
<�
D���G�G�L�T���o�
��v�x��
��v�}�
��a�v���
��J��I�
��h�J��Q�
��A�
��=�h���<�D�����
���
{�
��A��
0�
��G��J���
��1�J�
��=�1�
�
��J�{�J�J�������PInfo���	decl��_proof_9abc}�������������������:�l�F�5�F�9l�I�5�I�9���5�9��B�G�o�Bl�Q��S���V�&�Q��G�Q�(���J�x��B�^���?�T��F�?�d���P�R�I�P�S�g����e��m�i���d�v�n�P���e�S�w�p�R���m�V�����P�R�A�]��F�b�@�?�W�&�[��%��V�[������)�Z�����Q�)�W�Z�����Q�T�F�����(�@���D�T�)������������V�Y�I�V�Z�����V�Y�Y�)�V�Z�D�V�V��V�����������Z�(�������)���R�)�Z�Y�Z�%�(�D�%�%��%���[�R�Z�(�Y�V�%�[��T�	�	n�	+�p&�	�
8�	�f&��]�	@�P�S��������	��S�	������	��	@�c�G�	o�	+���	��
��	��1�c&��	+�	+�I�	+�	�������	����	����	R�R�	�	t�	V�f&����	��V�	�� �$�	��	@�h�J�	u�	V� �	��	���h&��	V�	V�I�	V�	�� � ��	�� �	�� �	�� �f&�����
��	V�	�	�
�
�
�	����p&������I���T�]���
E�\�	p�p&��	.�����
M�c�	��	��	��	o�	o��	��	��	@�V�[�	/���e�	��G�	��	+�	/�	��
���	@�(�Z�
H�	�f&����
��	R�Y�	W�f&����	��J�	��	V���	��	��	��	V�	V��	��	��
�f&��	��
�
��
9�f&��	�������	��	�h&��	�	�I�	�	@������
�
norm_numbin_zero_add�H�������p&������Z��	o�p&��	+����������Z����o�Gl�Q��S��V��Q��G����J�x��G�����D����I�e�Q������������Q��m��e�����d�D�������m�V���������e�S�w�R�����F����I������������������ �����Q� �����#��Q�X�I���(���@���D�X� ���,�'��,�Q����������R�����Y� �����D��������"���"��������Q�R� �T�R� ���Y�����D�����S���@��Y�����������f&�!�p&����	@�����w��z�{�	��S�	������	���	���������	��V�	�� �z�	��:�	�� � ��?�A�T�f&��z�z�I�z�T���{�	~���	��	,�f&�z�{�	��	@��������z���	��G�	��	+���	��
��	��	+�	+���
��	@����	y�7�z�	��	��J�	��	V�7�	��	����	u�p&��	V�� ��z�9����z���f&��z�z�����f&��	+�z���z�{�����{�PInfo���	decl��_proof_10abc}�������8�����������l�F���F�l�I���I����������o�l�Q����G������J�W�3�Q�Z�4�x���%������F��������I���/�����#�G�����J�1�^��v�7����#��H�G�G�L�:����������J�J�������
�$��F�b�����3�W�"������"�^�b����4�`�^�Q���5�h�^�Q�����l�(�����D���������5���Y�����4�D��������g�_��g����4�Z�_���������R���4�Y�4�V�Z�����"�R�4�Z�Y���V�"���	.�����	5�$�	@���	.�������	j��G�	��	o�	+���	@�p�c�	��	o���	��	���p&��	o�	o�I�	o�
��	��	o�	+�	+������	R����	`���	j���J�	��	u�	V���	@�f�h�	��	u���	��	���f&��	u�	u�I�	u�	��	��	u�	V�	V�	`�	��	����	`�	�	5�
�
/���������������I���T�$���r�#�	/�����}���"���������	@�Z�4���	5��������f&��	5�	5����������I���o�l�Q��G��J���.�9���x���8���
�3��I�-�Q�2�0��0�2�@�Q�6�J�9�G�B����D�G�2�E�J�J���I�0�N�G�G�L�R�2�0��7��I�\�.���5����5�e����'���g�e�Q�'�/�n�e�Q�,���r�������D�,�'�B���/�	�Y�'�����D��������m�f��m�������f�����'���R�'���Y�������N���5�����Y�����5��3���6�6�	Z�7�	@�0�2���7�������G���	+�����
����	+�	+�7��T���J���	V�����	����	V�	V�	Z�	��	����7�������h&������I���T�7�����6���������D�5�7�����U�	@�����7�	Z�����^�	��	V�p&��	Z�	Z�I�	Z���������I���PInfo���	decl��_proof_11ab}���
������������F����I����������o�l�5�Q�
��c��
��h�x���'�����5����&�����"�$�I�"�%�
����"�$��5���&���T�&���	@�"�%���	5���	j�G�c�	+�	o���
��	��
S�	+�1�c&��	+���
b�	+�1�
f�	+�	+�
l�	+�1���Y��
u�	+�
{�_��
��	R�$�	`�	5�	j�J�h�	V�	u�	`�	��	��
S�	V�1�h&��	V���
b�	V�1�
f�	V�	V�
l�	V�1�	������
u�	V�
{����	��
/���o�l�/�Q�
��c�
��h�x���������/�	������Q����������	�R������/�6�	Z���G���U�^���	Z�	Z���T�����	@�����	Z�7���r�c�	V�	o�	Z�	��	��z�c&��	V������K�h�	+�	u�7�
��	��S�h&��	+��b�k�
��	Z�	+�h&��	Z���	Z�PInfo���	decl��comm_ringcomm_ringmk�b������������������<����������&�PInfo���	prt��VMR��_lambda_1VMR��_lambda_2VMR��_lambda_3VMR��VMC���L�K

�7


�7
VMC���^
�7

�7
VMC�)��o�n

�7


�7
�c�w

�7


�7
�7
VMC���	��7
�7
���7
�7
decl��equations_eqn_1;�����B����PInfo��	ATTR����EqnL�SEqnL��ATTR�����class������decl�has_coehas_coehas_coemkr���%�PInfo��	prt�VMR�VMC��	�
�7
doc�The coercion from ℝ to ℂ sending `r` to the complex number `⟨r, 0⟩`decl�equations_eqn_1;�$��*B�$�,�PInfo��	ATTR����EqnL�SEqnL�ATTR����class����decl�of_real_rerl�Fcoecoe_to_liftcoe_base�,�� �>�PInfo�
� ATTR����
ATTR����
decl�of_real_imrl�I�=��� �D�PInfo��!ATTR����ATTR����decl�of_real_injzw�e}�<�=�����L����J�=�F�(��=�PInfo��*ATTR����decl�of_real_zero}�<���\�_�PInfo��1ATTR����ATTR����decl�of_real_eq_zeroz�e}�=�l���of_real_inj��PInfo��3ATTR����decl�of_real_ne_zeroz�ene�=��n��not_congr�d�g�of_real_eq_zero�PInfo��4decl�of_real_one}�<�1�<�\��PInfo� �7ATTR���� ATTR���� decl�of_real_addrs}�<�Q�b�J�=�"�#�����l�F���F��l�I���I���������o���v�x����v�}�����v�����v�}����v��l������������
����������Q�F�J�>���(�J�=�D�����>���l����������v�����v�}���%�v���������������2�����Q�I�J�D�����J�=�D������D�������W�����PInfo�!�OATTR����!decl�of_real_negr}�<����=�%���
�l�F�
�F�l�I�
�I����
��o��v�x���v�}����v����v�}��f�v�(l�	�	�)����	���	��	����>�	�B�=c�u�#�#e_2��(�zV�~�>����-�)neg_inj'�}��)�v����v�}��%�v�������	�����
�7�i��D�
�v�=�G�D����
C�W�����PInfo�$�RATTR����$decl�of_real_mulrs}�<�����J�=�*�+�����l�F���F��l�I���I���������o���v�x����v�}�����v�����v�}��l�����v������������������I����������
��������������������>�����D���^�J�=�v�����������>���������
*��
{��������D����
��������C�H��������
��
C��������v�������v�}���%�v��������������������Q���D���>�����J�=�D��������
{���D����
��	���	�
*�
{���>���	����W�����PInfo�)�VATTR����)decl�smul_rerzl�F�����G�-�.�o�=�v�x��=�v�}�=l�<�<�v���:�<��:�I�<��<�L�M�
�N�L���<��Q�L�����G���J�U���v�X�<���G�G�L�Z���Z�
+�
{���J�J���
6���<����<�<��<�
��
C���<�<�<�y��G�v���<���PInfo�,�\decl�smul_imrzl�I�9���J�0�1�o���v�x����v�}��l�����v����������Q��������Q���J���G���
�D�������J�J���������
y�
{���G�G�L�
����������������v�������PInfo�/�]decl�of_real_bit0r}�<bit0�P���\�=�3�����l�F���F��l�I���I���������o���v�x����v�}�����v�����v�}���)�v��l�Q���)����������Q�>�>����F�b�=�=������
�|���<���
_inst_1has_lift_ta�7e_2��W�3V�;����bit0equations_eqn_1�P�!�(�=�=�D�>���>�������������>�������
�$�\�=�1�9�l���P�)���[���v�}���%�v������������c�Q�D�D���c�I�
�g�����
�-���=�=�D�D����D�����������������g�����j�g�����
�G�r�z���W�����PInfo�2�jATTR����2decl�of_real_bit1r}�<bit1�0�P���6�\�=�=�����l�F���F��l�I���I���������o���v�x����v�}�����v�����v�}��l�1�1�v��l�Q�1����������������Q�=�������F�b�<��������������b��������<�������!��������Q���1��1��bit1equations_eqn_1�0�P�R���1�*�1�����Fa�Be_2�#�#e_3� �a��������#����V�\��<� �����2�(�<���D�=�1�
�������������������0��������������b���<�a�
�add_comm_monoidto_add_comm_semigroupsemiringto_add_comm_monoidringto_semiringcomm_ringto_ring��<�����6�\�=�P�H���<�"�+�l���1���a�������1�1����v���1���v�}��l�����v����������2�����{�Q�A���|�{�I��������������<���D�A��
0��������I����������|�������|�������������X��������v�v���������PInfo�<�kATTR����<decl�I��1%�PInfo�M�{VMR�MVMC�M�{�7
�7
doc�Mcomplex.I is the square root of -1 above the imaginary axisdecl�Mequations_eqn_1}�M��B���PInfo�O�{ATTR����OEqnL�OSEqnL�Mdecl�I_rel�F���
��Sorry�PInfo�P�}ATTR����Pdecl�I_iml�I���1
��Sorry�PInfo�Q�~ATTR����Qdecl�I_mul_I}���������<
��Sorry�PInfo�R��ATTR����Rdecl�mk_eq_add_mul_Iab}	�����=���T�U
��Sorry�PInfo�S��decl�re_add_imz}�b�<�G���<�J���W
��Sorry�PInfo�V��ATTR����Vdecl�I_ne_zero�o���
��Sorry�PInfo�X��decl�conjz�Z�H��"�PInfo�Y��VMR�YVMC�Y	���Z

�7
decl�Yequations_eqn_1�Z}�Y���Z�����PInfo�\��ATTR����\EqnL�\SEqnL�Ydecl�conj_rezl�F���G�^
��Sorry�PInfo�]��ATTR����]decl�conj_imzl�I�����`
��Sorry�PInfo�_��ATTR����_decl�conj_of_realr}���=�=�b
��Sorry�PInfo�a��ATTR����adecl�conj_zero}����
�Sorry�PInfo�c��ATTR����cdecl�conj_one}���<�<
�	Sorry�PInfo�d��ATTR����ddecl�conj_I}��������
�Sorry�PInfo�e��ATTR����edecl�conj_addzw}���d�b�����g�h
�Sorry�PInfo�f��ATTR����fdecl�conj_negz}���������j
�Sorry�PInfo�i��ATTR����idecl�conj_neg_I}���
��
�$Sorry�PInfo�k��ATTR����kdecl�conj_mulzw}����������m�n
�*Sorry�PInfo�l��ATTR����ldecl�conj_conjz}�����p
�2Sorry�PInfo�o��ATTR����odecl�conj_involutivefunctioninvolutive��
�8Sorry�PInfo�q��decl�conj_bijectivefunctionbijective��
�=Sorry�PInfo�t��decl�conj_injzw�e}����x�y
�BSorry�PInfo�w��decl�conj_eq_zeroz�e���}��{
�LSorry�PInfo�z��ATTR����zdecl�eq_conj_iff_realz�e��Existsr~�=�}
�WSorry�PInfo�|��decl�eq_conj_iff_rez�Q}����
�]Sorry�PInfo����decl�add_conjz}�����<�����1�G��
�gSorry�PInfo����decl�Conj_proof_1}���;monoidto_has_onesemiringto_monoid�F�q
�tSorry�PInfo����decl��_proof_2xy}�����
[��to_semigroup�o�{���
��Sorry�PInfo����decl��_proof_3}����1add_comm_monoidto_add_monoid�G��
��Sorry�PInfo����decl��_proof_4xy}���a�;�E�������
��Sorry�PInfo����decl��ring_hom�F�Fring_hommk�F�F����������'�PInfo����VMR��VMC�����Ydoc��the ring homomorphism complex conjugationdecl��equations_eqn_1;������B�����PInfo����ATTR�����EqnL��SEqnL��decl�norm_sqz���Q�
��G�
��J%�PInfo����VMR��VMC������
_c_1
_c_2�7
�7
�7
decl��equations_eqn_1��l����������PInfo����ATTR�����EqnL��SEqnL��decl�norm_sq_of_realrl���=����
��Sorry�PInfo����ATTR�����decl�norm_sq_zerol����
��Sorry�PInfo����ATTR�����decl�norm_sq_onel���<�1
��Sorry�PInfo����ATTR�����decl�norm_sq_Il�����1
��Sorry�PInfo����ATTR�����decl�norm_sq_nonnegzhas_lele�5has_le�����
��Sorry�PInfo����decl�norm_sq_eq_zeroz�e����K��
��Sorry�PInfo����ATTR�����decl�norm_sq_posz�ehas_ltlt�5has_lt����o���
��Sorry�PInfo����ATTR�����decl�norm_sq_negzl��������
��Sorry�PInfo����ATTR�����decl�norm_sq_conjzl��������
��Sorry�PInfo����ATTR�����decl�norm_sq_mulzwl��������������
�Sorry�PInfo����ATTR�����decl�norm_sq_addzwl���d�Q�Q����d�F��������
�Sorry�PInfo����decl�re_sq_le_norm_sqz��������
�Sorry�PInfo����decl�im_sq_le_norm_sqz��������
� Sorry�PInfo����decl�mul_conjz}�
����<����
�'Sorry�PInfo����decl�fieldfield
�,Sorry�PInfo����	prt��VMR��VMC����	sorrydecl��equations_eqn_1;�,���-B�,�/�PInfo����	ATTR�����EqnL��SEqnL��ATTR�����class������EndFile