File: //usr/lib/python3/dist-packages/pygments/lexers/__pycache__/theorem.cpython-38.pyc
U
`a�[ZJ � @ s� d Z ddlZddlmZmZmZ ddlmZmZm Z m
Z
mZmZm
Z
mZmZ dddgZG dd� de�ZG d d� de�ZG d
d� de�ZdS )z�
pygments.lexers.theorem
~~~~~~~~~~~~~~~~~~~~~~~
Lexers for theorem-proving languages.
:copyright: Copyright 2006-2017 by the Pygments team, see AUTHORS.
:license: BSD, see LICENSE for details.
� N)�
RegexLexer�default�words) �Text�Comment�Operator�Keyword�Name�String�Number�Punctuation�Generic�CoqLexer�
IsabelleLexer� LeanLexerc @ s� e Zd ZdZdZdgZdgZdgZdZdZ dZ
d Zd
ZdZ
dZd
ZdZdZdZdefdejjfdedfeeddd�ejfee ddd�efee
ddd�ejfeeddd�efeeddd�ejfee
ddd�ejfdefdd�eddd� � efdeeef efdd�e� ejfdefdej fd ej!fd!ej"fd"ej#fd#ej$fd$e%j&fd%e%j&fd&efd'e%j'd(fd)efgd*efded+fd,ed-fd.efgd/e%j'fd0e%j'fd'e%j'd-fgdefd1e(fd2ejfd3ej)d-fd4ed-fe*d-�gd5�Z+d6d7� Z,dS )8r zZ
For the `Coq <http://coq.inria.fr/>`_ theorem prover.
.. versionadded:: 1.5
ZCoqZcoqz*.vz
text/x-coq)MZSectionZModuleZEndZRequireZImportZExport�VariableZ VariablesZ ParameterZ
ParametersZAxiomZ
HypothesisZ
HypothesesZNotationZLocalZTactic�ReservedZScopeZOpenZCloseZBindZDelimitZ
DefinitionZLetZLtacZFixpointZ
CoFixpointZMorphismZRelationZImplicitZ Arguments�SetZUnsetZ
ContextualZStrictZPrenexZ ImplicitsZ InductiveZCoInductiveZRecordZ StructureZ CanonicalZCoercionZTheoremZLemmaZ CorollaryZPropositionZFactZRemarkZExampleZProofZGoalZSaveZQedZDefinedZHintZResolveZRewriteZViewZSearchZShowZPrintZPrintingZAllZGraphZProjectionsZinsideZoutsideZCheckZGlobalZInstance�ClassZExistingZUniverseZPolymorphicZMonomorphicZContext)�forall�existsZexists2�fun�fixZcofixZstruct�match�end�in�return�let�if�is�then�else�forZofZnosimpl�with�as��TypeZProp)CZpose�setZmove�caseZelim�apply�clearZhnfZintroZintrosZ
generalize�rename�patternZafterZdestructZ induction�usingZrefineZ inversionZ injectionZrewriteZcongrZunlockZcomputeZringZfield�replaceZfoldZunfoldZchangeZ
cutrewriteZsimpl�haveZsuffZwlogZsufficesZwithoutZlossZnat_norm�assertZcutZtrivialZrevertZ
bool_congrZ nat_congrZsymmetryZtransitivity�auto�split�left�rightZautorewrite�tautoZsetoid_rewriteZ intuitionZeautoZeapplyZeconstructorZ
etransitivity�constructorZerewriteZredZcbv�lazyZ
vm_computeZnative_computeZsubst)�by�done�exactZreflexivityr5 ZromegaZomegaZ
assumptionZsolveZ
contradictionZdiscriminateZ
congruence)ZdoZlast�first�tryZidtac�repeat)1�!=�#�&�&&z\(z\)�\*z\+�,�-z-\.�->�\.z\.\.�:�::�:=�:>�;�;;�<�<-z<->�=�>z>]z>\}z\?z\?\?z\[z\[<z\[>z\[\|�]�_�`z\{z\{<z\|z\|]�\}�~�=>z/\\z\\/z\{\|z\|\}� Π� λz[!$%&*+\./:<=>?@^|~-]z[!?~]z[=<>@^|&+\*/$%-])ZunitZnat�bool�string�ascii�list�\s+zfalse|true|\(\)|\[\]�\(\*�comment�\b��prefix�suffixz\b([A-Z][\w\']*)z(%s)�|N���z
(%s|%s)?%sz\b(%s)\bz
[^\W\d][\w']*�\d[\d_]*�0[xX][\da-fA-F][\da-fA-F_]*�0[oO][0-7][0-7_]*�0[bB][01][01_]*z(-?\d[\d_]*(.[\d_]*)?([eE][+\-]?\d[\d_]*)z7'(?:(\\[\\\"'ntbr ])|(\\[0-9]{3})|(\\x[0-9a-fA-F]{2}))'z'.'�'�"rZ �[~?][a-z][\w\']*:�[^(*)]+�#push�\*\)�#pop�[(*)]z[^"]+z""rF z[A-Z][\w\']*(?=\s*\.)z[A-Z][\w\']*z[a-z][a-z0-9_\']*)�rootr_ rZ Zdottedc C s | � d�rdS d S )Nz(*T)�
startswith)�text� ru �9/usr/lib/python3/dist-packages/pygments/lexers/theorem.py�analyse_text� s
zCoqLexer.analyse_text)-�__name__�
__module__�__qualname__�__doc__�name�aliases� filenames� mimetypes� keywords1� keywords2� keywords3Z keywords4Z keywords5Z keywords6Zkeyopts� operatorsZprefix_symsZ
infix_symsZ
primitivesr r �Builtin�Pseudor r r � Namespacer&