+
    TBiE                         R t ^ RIHtHtHtHt ^ RIHtHtH	t	H
t
HtHtHtHtHtHt ^ RIHt RR.t ! R R]4      t ! R R]4      tR# )	z
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                   F  a  ] tR t^t o RtRtRtR.tR.tR.t	Rt
^ tR?tR@tRAtRBtRCtRDtREtR	tR
tRtRR]3R]P0                  P2                  3R]R3R]3R]P8                  3R]! ]P8                  ]]P8                  4      3R]P8                  R3R]P8                  R3]! ]RRR7      ]P8                  3]! ]RRR7      ]3]! ]RRR7      ]P>                  3]! ]RRR7      ]3]! ]RRR7      ]P2                  3]! ]RRR7      ]P@                  3R]3RPC                  RPE                  ]RRRF1,          4      4      ]#3R] R] R] 2]#3R ]3R!]$PJ                  3R"]$PL                  3R#]$PN                  3R$]$PP                  3R%]$PR                  3R&]*PV                  3R']*PV                  3R(]3R)]*PX                  R*3R+]3R,]P0                  P2                  3.RR]3R-]P8                  3R)]*PX                  R*3R.]$PJ                  3R]-R/3.RR]3R0]3R1]#3R2]3R!]$PJ                  3R"]$PL                  3R]R3R]-R/3.RR3]3R]R43R5]R/3R6]3.R*R7]*PX                  3R8]*PX                  3R)]*PX                  R/3.R9R]3R]-3R:]P8                  3R;]P\                  R/3R<]R/3]/! R/4      ./t0R= t1R>t2V t3R# )Gr   z
For the Coq theorem prover.
Coqzhttp://coq.inria.fr/coqz*.vz
text/x-coqz1.5\.z[!$%&*+\./:<=>?@^|~-]z[!?~]z[=<>@^|&+\*/$%-]root\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]*?\.)zset-optionsz\b(?:String|Number)\s+Notationz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+#popz*\b(?:via|mapping|abstract|warning|after)\bz=>|[()\[\]:,]z'\b[^\W\d][\w\']*(?:\.[^\W\d][\w\']*)*\bz([^(*)]+|\*+(?!\)))+#push\*\)[(*)]z[^"]+z""dottedz[A-Z][\w\']*(?=\s*\.)z[A-Z][\w\']*z[a-z][a-z0-9_\']*c                *    R V 9   d   RV 9   d   ^# R# R# )QedProofN )texts   &</usr/lib/python3.14/site-packages/pygments/lexers/theorem.pyanalyse_textCoqLexer.analyse_text   s    D=W_ -=    r/   )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Goalr.   RestartSaver-   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->r   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   ≥)4__name__
__module____qualname____firstlineno____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   rG   formatjoinr   r   IntegerHexOctBinFloatr   CharDoubler   r   r   tokensr2   __static_attributes____classdictcell__)__classdict__s   @r1   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&
N 	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` r4   c                   j   ] tR t^tRtRtRtR.tR.tR.t	Rt
R+tR,tR-tR.tR/tR0tR1tR2tR3tR4tR5tR6tR7tR8tR9tR:tR;tR<tR=tR	. R
]3NR]R3NR] PB                  R3NR] R3N]"! ]4      ]#3N]"! ]4      ]#PH                  3N]"! ]RRR7      ]%PL                  3N]"! ]RRR7      ]%PN                  3N]"! ]RRR7      ]%3N]"! ]RRR7      ]%3N]"! ]RRR7      ](PR                  3N]"! ]RRR7      ](PT                  3N]"! ]RRR7      ]%PV                  3N]"! ]RRR7      ]%PV                  3N]"! ]RRR7      ](PX                  3N]"! ]RRR7      ]%3N]"! ]RRR7      ]%3N]"! ]RRR7      ]%3N]"! ]RRR7      ]%3N]"! ]RRR7      ]%3N]"! ]RRR7      ]%3N]"! ]RRR7      ]%3N]"! ]RRR7      ]%PL                  3NR]-PB                  3NR].PN                  3NR]/P`                  3NR]/Pb                  3NR]/Pd                  3NR] R3NR] Pf                  R3NR].3NRR]3R]R3R]R3R]3.RR ] 3R] PB                  R3R] R3R!] PB                  R3R"] R3R] PB                  3R#] 3.RR$] 3R] PB                  3R%] 3R&] 3R] R3.RR'] Pf                  3R] PB                  3R(] Pf                  3R&] Pf                  3R] Pf                  R3./t4R)t5R*# )>r   z#
For the Isabelle proof assistant.
Isabellezhttps://isabelle.in.tum.de/isabellez*.thyztext/x-isabellez2.0	cartoucher   r   r   r   z\\<open>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/   N)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_declarationr0   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_axiomatizationrB  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..)6r  r  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	   r0  r   r   Heading
Subheadingr1  Errorr   r
   r   r5  r6  r7  Otherr;  r<  r/   r4   r1   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Fr4   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/   r4   r1   <module>r     sN   
 @ ?- - - +
'jz jZWJ Wr4   