
    ,hE                         d Z ddlmZmZmZmZ ddlmZmZm	Z	m
Z
mZmZmZmZmZmZ ddlmZ ddgZ G d de      Z G d de      Zy	)
a  
    pygments.lexers.theorem
    ~~~~~~~~~~~~~~~~~~~~~~~

    Lexers for theorem-proving languages.

    See also :mod:`pygments.lexers.lean`

    :copyright: Copyright 2006-2025 by the Pygments team, see AUTHORS.
    :license: BSD, see LICENSE for details.
    )
RegexLexerbygroupsdefaultwords)
TextCommentOperatorKeywordNameStringNumberPunctuationGeneric
Whitespace)	LeanLexerCoqLexerIsabelleLexerc                       e Zd ZdZdZdZdgZdgZdgZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdefdej.                  j0                  fdedfdefdej6                  fd eej6                  eej6                        fdej6                  dfdej6                  df eedd      ej6                  f eedd      ef eedd      ej<                  f eedd      ef eedd      ej0                  f eedd      ej>                  fd efd!jA                  d"jC                  ed#d#d$               e"fd%e d"e d&e e"fd'efd(e#jH                  fd)e#jJ                  fd*e#jL                  fd+e#jN                  fd,e#jP                  fd-e)jT                  fd.e)jT                  fd/efd0e)jV                  d1fd2efd3ej.                  j0                  fgdefd4ej6                  fd0e)jV                  d1fd5e#jH                  fd6e,d7fgdefd8efd9e"fd:efd(e#jH                  fd)e#jJ                  fdedfd6e,d7fgd;efded<fd=ed7fd>efgd?e)jV                  fd@e)jV                  fd0e)jV                  d7fgdefd6e,fdAej6                  fdBejZ                  d7fdCed7f e.d7      gdDZ/dE Z0y#)Fr   z%
    For the Coq theorem prover.
    Coqzhttp://coq.inria.fr/coqz*.vz
text/x-coqz1.5r   )cSectionModuleEndRequireImportExportIncludeVariable	Variables	Parameter
ParametersAxiomAxioms
Hypothesis
HypothesesNotationLocalTacticReservedScopeOpenCloseBindDeclareDelimit
DefinitionExampleLetLtacLtac2Fixpoint
CoFixpointMorphismRelationImplicit	ArgumentsTypes
ContextualStrictPrenex	Implicits	InductiveCoInductiveRecord	StructureVariant	CanonicalCoercionTheoremLemmaFactRemark	CorollaryPropositionPropertyGoalProofRestartSaveQedDefinedAbortAdmittedHintResolveRewriteViewSearchComputeEvalShowPrintPrintingAllGraphProjectionsinsideoutsideCheckGlobalInstanceClassExistingUniversePolymorphicMonomorphicContextSchemeFromUndoFailFunctionProgramElpiExtractOpaqueTransparentUnshelvezNext Obligation)forallexistsexists2funfixcofixstructmatchendinreturnletifisthenelseforofnosimplwithas)TypePropSPropSet)Cposesetmovecaseelimapplyclearhnfintrointros
generalizerenamepatternafterdestruct	inductionusingrefine	inversion	injectionrewritecongrunlockcomputeringfieldreplacefoldunfoldchange
cutrewritesimplhavesuffwlogsufficeswithoutlossnat_normassertcuttrivialrevert
bool_congr	nat_congrsymmetrytransitivityautosplitleftrightautorewritetautosetoid_rewrite	intuitioneautoeapplyeconstructoretransitivityconstructorerewriteredcbvlazy
vm_computenative_computesubst)bynowdoneexactreflexivityr   romegaomegalianialranrapsatz
assumptionsolvecontradictiondiscriminate
congruenceadmit)dolastfirsttryidtacrepeat);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lp:\{\{z\|z\|]z\}~z=>z/\\z\\/z\{\|z\|\}u   λ   ¬u   ∧u   ∨u   ∀u   ∃u   →u   ↔u   ≠u   ≤u   ≥z[!$%&*+\./:<=>?@^|~-]z[!?~]z[=<>@^|&+\*/$%-]\s+zfalse|true|\(\)|\[\]\(\*commentz'\b(?:[^\W\d][\w\']*\.)+[^\W\d][\w\']*\bz\bEquations\b\??zM\b(Elpi)(\s+)(Program|Query|Accumulate|Command|Typecheck|Db|Export|Tactic)?\bz,\bUnset\b|\bSet(?=[ \t]+[A-Z][a-z][^\n]*?\.)set-optionsz\b(?:String|Number)\s+Notationsn-notation\bprefixsuffixz\b([A-Z][\w\']*)z({})|N(z)?z[^\W\d][\w']*z\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'.''"stringz[~?][a-z][\w\']*:z\Sz[A-Z]\w*z\d+r   #popz*\b(?:via|mapping|abstract|warning|after)\bz=>|[()\[\]:,]z'\b[^\W\d][\w\']*(?:\.[^\W\d][\w\']*)*\bz([^(*)]+|\*+(?!\)))+#push\*\)[(*)]z[^"]+z""z[A-Z][\w\']*(?=\s*\.)z[A-Z][\w\']*z[a-z][a-z0-9_\']*)rootr   r  r   r  dottedc                     d| v rd| v ryy y )NrR   rO       )texts    Y/var/www/html/Resume-Scraper/venv/lib/python3.12/site-packages/pygments/lexers/theorem.pyanalyse_textzCoqLexer.analyse_text   s    D=W_ -=    )1__name__
__module____qualname____doc__nameurlaliases	filenames	mimetypesversion_addedflags	keywords1	keywords2	keywords3	keywords4	keywords5	keywords6keyopts	operatorsprefix_syms
infix_symsr   r   BuiltinPseudor   r
   	Namespacer   r   r   r)   formatjoinr	   r   IntegerHexOctBinFloatr   CharDoubler   rh   r   tokensr  r  r  r  r   r      s    D
 CgGIIMEI&IIIIIG )IK$J TN$dll&9&9:gy)7> '"3"34]_ghohyhyz~  @G  @Q  @Q  `R  S<g>O>OQ^_.0A0A=Q9U597;L;LM9U597C9U597<<H9U597C9U597>>J9U597;K;KL $'^^CHHWTrT]34h?*Q{m2i[98Dt$&..)+VZZ8!6::.,8&,,GGUV[[!7O6==(+!4(DLL''(K&
P TN'++,6==(+V^^$K(
 TN:GDx(7>&..)+VZZ8gy)K(

 %g.gw'gv&w
 v}}%FMM"6==&)
 TNK %t~~6djj&1!40FO
MNF`r  c                   X   e Zd ZdZdZdZdgZdgZdgZdZ	dZ
d	Zd
ZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZdZg defdedfdej@                  dfd edf e!e      e"f e!e      e"jF                  f e!e
d!d!"      e$jJ                  f e!ed!d!"      e$jL                  f e!ed!d!"      e$f e!ed!d!"      e$f e!ed!d!"      e'jP                  f e!ed!d!"      e'jR                  f e!ed!d!"      e$jT                  f e!ed!d!"      e$jT                  f e!ed!d!"      e'jV                  f e!ed!d!"      e$f e!ed!d!"      e$f e!ed!d!"      e$f e!ed!d!"      e$f e!ed!d!"      e$f e!ed!d!"      e$f e!ed!d!"      e$f e!ed!d!"      e$jJ                  fd#e,j@                  fd$e-jL                  fd%e.j^                  fd&e.j`                  fd'e.jb                  fd(ed)fd*ejd                  d+fd,e-fd-efded.fd/ed0fd1efgd2efdej@                  d.fd ed.fd3ej@                  d0fd4ed0fd#ej@                  fd5efgd6efd#ej@                  fd7efd8efd(ed0fgd9ejd                  fd#ej@                  fd:ejd                  fd8ejd                  fd*ejd                  d0fgd;Z3y<)=r   z+
    For the Isabelle proof assistant.
    Isabellezhttps://isabelle.in.tum.de/isabellez*.thyztext/x-isabellez2.0)2andassumesattachavoidsbindercheckingclass_instanceclass_relationcode_modulecongsconstant
constrains	datatypesdefinesfilefixesr   	functionshints
identifierr   importsr   includesinfixinfixlinfixrr   keywordsr   module_namemonos	morphismsno_discs_selsnotesobtainsopenoutput
overloaded
parametric
permissive	pervasive
rep_compatshows	structure
type_classtype_constructor	uncheckedunsafewhere)L
ML_commandML_val
class_deps	code_deps	code_thmsdisplay_draftsfind_constsfind_theoremsfind_unused_assmsfull_prfhelplocale_depsnitpickprprfprint_abbrevsprint_antiquotationsprint_attributesprint_binds
print_bnfsprint_bundlesprint_case_translationsprint_casesprint_clasetprint_classesprint_codeprocprint_codesetupprint_coercionsprint_commandsprint_contextprint_defn_rulesprint_dependenciesprint_factsprint_induct_rulesprint_inductivesprint_interpsprint_localeprint_localesprint_methodsprint_optionsprint_ordersprint_quot_mapsprint_quotconstsprint_quotientsprint_quotientsQ3print_quotmapsQ3print_rulesprint_simpsetprint_stateprint_statementprint_syntaxprint_theoremsprint_theoryprint_trans_rulesproppwd
quickcheckrefutesledgehammer
smt_statussolve_directspark_statustermthmthm_depsthy_depsr   try0typunused_thmsvaluevalueswelcomeprint_ML_antiquotationsprint_term_bindingsvalues_prolog)theorybeginr   )headerchapter)section
subsectionsubsubsectionsectsubsect
subsubsect)MLML_fileabbreviationadhoc_overloadingarities	atom_declattribute_setupaxiomatizationbundlecase_of_simpsclassclassesclassrel
codatatype
code_abort
code_class
code_constcode_datatypecode_identifiercode_includecode_instancecode_modulename
code_monadcode_printingcode_reflectcode_reserved	code_typecoinductivecoinductive_setconstscontextdatatypedatatype_newdatatype_new_compatdeclarationdeclaredefault_sortdefer_recdef
definitiondefsdomaindomain_isomorphism	domaindefequivarianceexport_codeextractextract_typefixrecr|   	fun_cases
hide_class
hide_const	hide_fact	hide_typeimport_const_mapimport_fileimport_tptpimport_type_map	inductiveinductive_setinstantiationjudgmentlemmaslifting_forgetlifting_updatelocal_setuplocalemethod_setupnitpick_paramsno_adhoc_overloadingno_notation	no_syntaxno_translationsno_type_notationnominal_datatypenonterminalnotationnotepadoracleoverloadingparse_ast_translationparse_translationpartial_function	primcorecprimrecprimrec_newprint_ast_translationprint_translationquickcheck_generatorquickcheck_paramsrealizability	realizersrecdefrecordrefute_paramssetupsetup_liftingsimproc_setupsimps_of_casesledgehammer_params	spark_end
spark_openspark_open_sivspark_open_vcgspark_proof_functionsspark_types
statespacesyntaxsyntax_declarationr  text_rawtheoremstranslationstype_notationtype_synonymtyped_print_translationtypedecl
hoarestateinstall_C_fileinstall_C_types	wpc_setupc_defsc_typesmemsafe
SML_exportSML_file
SML_importapproximatebnf_axiomatization	cartouchedatatype_compatfree_constructorsfunctornominal_functionnominal_terminationpermanent_interpretationbindsdefiningsmt2_statusterm_cartoucheboogie_filetext_cartouche)inductive_casesinductive_simps)!ax_specificationbnf	code_pred	corollarycpodefcrunchcrunch_ignoreenriched_typefunctioninstanceinterpretationlemmalift_definitionnominal_inductivenominal_inductive2nominal_primrecpcpodefprimcorecursivequotient_definitionquotient_type	recdef_tcrep_datatypeschematic_corollaryschematic_lemmaschematic_theoremspark_vcspecificationsubclass	sublocaleterminationtheoremtypedefwrap_free_constructors)r   r   qed)sorryoops)r   hence	interpret)nextproof)finallyfromr   
ultimatelyr   )ML_prfalsoinclude	includingr   moreovernotetxttxt_raw	unfoldingr   write)assumer   defr}   presume)guessobtainshowthus)r   	apply_endapply_tracebackdeferprefer)r   r   r  )[r   r   r   r   r  +r   !?){}.z..r   r   r   z\\<open>rB  u   \{\*|‹r  r  z\\<(\w|\^)*>z'[^\W\d][.\w']*r	  r
  r  r  r  r   factz/[^\s:|\[\]\-()=,+!?{}._][^\s:|\[\]\-()=,+!?{}]*z[^(*)]+r  r  r  r  u   [^{*}\\‹›]+z	\\<close>u   \*\}|›z[{*}\\]z[^"\\]+z\\"z\\z[^`\\]+z\\`)r  r   rB  r  r  N)4r  r  r  r  r   r!  r"  r#  r$  r%  keyword_minorkeyword_diagkeyword_thykeyword_sectionkeyword_subsectionkeyword_theory_declkeyword_theory_scriptkeyword_theory_goalkeyword_qedkeyword_abandon_proofkeyword_proof_goalkeyword_proof_blockkeyword_proof_chainkeyword_proof_declkeyword_proof_asmkeyword_proof_asm_goalkeyword_proof_scriptr.  proof_operatorsr   r   r   Symbolr   r	   Wordr
   r2  r   r   Heading
Subheadingr3  Errorr   r   r   r7  r8  r9  Otherr=  r  r  r  r   r      s    D
'ClG	I"#IM
ML, -K+O
$L C
 (K-7+
 D@I
 ,O.
Z .
gy).
 &--5.
 &+.	.
 9x(.
 ?#X]]3.
 =u=w~~N.
 <e<gllK.
 ;uU;WE.
 &uUCWM.
  ?5?Q!.
" %eEBGDVDVW#.
& &uUCWEVEVW'.
( (uEwGXGXY).
, (uEw}}U-.
0 ;uU;WE1.
2 %eEBGL3.
4 &uUCWM5.
6 %eEBGL7.
: &uUCWM;.
< $U5A7K=.
> )%FP?.
B 'eDgnnUC.
F dkk*G.
J  +K.
N ,VZZ8O.
P "6::.Q.
R  ,S.
V 68$W.
X 6<<(Y.
Z @F[.
` !gw'gv&w	
  (&--1&'*6==&1&&)fmm, 
  fmm,VFO66"
 &fmm,V\\"FLL!6<<(
MMFr  N)r  pygments.lexerr   r   r   r   pygments.tokenr   r   r	   r
   r   r   r   r   r   r   pygments.lexers.leanr   __all__r   r   r  r  r  <module>r     sN   
 @ ?- - - +
'jz jZWJ Wr  