÷ƒ’À;è TeX output 1997.03.05:1635‹ÿÿÿÿ ª ýs o ýÞ‘QöóDÓítG®G®cmr17ºAn–7tExtension“of“the“LŸüdú‘úKGóX«Q cmr12»AŽŽ‘¹”ºT‘ý[™Ÿ¸-EŽ‘;gX“theorem“en•Œqvironmen“tŸùº¯ó!",š cmsy10¿ŽŽŽŸ’ÍÞ²»F‘ÿVrank‘ê¨Mittelbac¬rhŽŽ¤’»GýElectronic–ê¨Data“SystemsŽŽ¡’Ã0€(Deutsc•¬rhland)‘ê¨Gm“bHŽŽ¡’ÕxýEisenstrae‘ê¨56ŽŽ¡’Ä9cD-65424‘ê¨RSŽ‘ùÌvusselsheimŽŽ¡’¯F‘ÿVederal–ê¨Republic“of“German¬ryŽŽŽŽŽŸ]ˆ‹’ÕòiMarc¬rh–ê¨5,“1997ŽŸ.’æ!Kót ‰: cmbx9ÇAbstractŽŸ¬Ñ‘oßüóo´‹Ç cmr9ÆThe–Ñmacros“describšAÇed“in“this“pap˜er“yield“an“extension“of“the“LŸýó5‘ü«‡ó¹Aa¨cmr6ÁAŽŽ‘© ÆT‘þuAŸïÿEŽ‘˜ŸX“the-Ž¤ ‘borem–Ìemecš¾9hanism.‘A¤It“is“designed“is“to“satisfy“the“di eren˜t“requiremen˜ts“ofŽ¡‘bv‘ÿ|rarious–¹ßjournals.‘ýôThš¾9us,‘Ì*the“la˜y˜out“of“the“\theorems"“can“bAÇe“manipulated“b˜yŽ¡‘bdetermining–JFa“\st¾9yle".‘»FThis“article“describAÇes“not“only“the“use,‘W‚but“also“theŽ¡‘bde nition,–Tof“the“necessary“macros.Ž©!Ä‘Ió ÂÖN ff cmbx12ËPreface–ffto“vŒÌersion“2.2ŽŸç‘IóKñ`y cmr10²F‘ÿ*ªor‘3LŸýó5‘üffóÙ“ Rcmr7±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX‘ü2Ÿÿó  b> cmmi10µ"ŽŽ‘-^²this–3pacš¸ãk‘ÿqÇage“did“not“need“an˜y“fundamen˜tal“c˜hanges.‘aI‘only“moGdi-Ž¤ ‘I ed–Äéthe“messages“generated“so“that“theorem“la•¸ãy“out›Äést“yles˜will˜sho“w˜up˜with˜theŽ¡‘Ió!ßêŸ'EŽ‘ãxX.Ž¦‘IËPreface–ffto“vŒÌersion“2.1ŽŸç‘I²This–Λvš¸ãersion“is“iden˜tical“to“2.0g“describšGed“in“ó"p®0J cmsl10ÍTUGb˜oat‘P²10#3“except“for“someŽ¡‘Iinš¸ãternal–UUdefaults“whic˜h“are“no˜w“set“depGending“on“the“used“fon˜t“selection“sc˜heme.Ž¡‘XThis–»?wš¸ãas“done“to“a˜v˜oid“unpleasan˜t“surprises“if“the“new“fon˜t“selection“sc˜hemeŽ¡‘Iis–UUin“force.‘qÇF‘ÿ*ªor“further“details“see“section“3“and“[1Ž‘].Ž¦‘IË1Ž‘aLËInŒÌtros3ductionŽŸç‘I²F‘ÿ*ªor–Í:our“purpšGoses“here,‘ès\theorems"“are“lab˜elled“en¸ãunciations,‘èsoften“set“o “from“theŽ¡‘Imain–×ntext“bš¸ãy“extra“space“and“a“fon˜t“c˜hange.‘øTheorems,–÷ôcorollaries,“conjectures,Ž¡‘Ide nitions,‘áand–ò’remarks“are“all“instances“of“\theorems".‘I~The“\header"“of“theseŽ¡‘Istructures–pËis“compšGosed“of“a“lab˜el“(sucš¸ãh“as“ó#Œ-ø cmcsc10ÎTheorem“²or“ÎRemark²)“and“a“n˜um˜bGerŽ¡‘Iwhic¸ãh–UUserializes“an“item“in“the“sequence“of“items“with“the“same“labGel.Ž‘IŸX-‰ffÿrŸ @‘ ÷ˆŸý-:óq¡% cmsy6ÅŽŽ‘LÜó|{Ycmr8ÀThis–ÕX le“has“všÃŽersion“n˜um˜bŸ'EŽ‘ãxX“at“the“F‘ÿ*ªac˜h˜bGereic˜h“Mathematik“inŽ¤ ‘IMainz,›K$the–ûdesire“to“manipulate“the“la•¸ãy“out–ûof“\theorems"“arose.‘¿¹In“Mainz,˜theŽ¡‘Ifollo•¸ãwing›UUt“w“o˜con“v“en“tions˜came˜in“to˜general˜use:Ž¤‘U8ä1.ŽŽŽ‘bThe›UUn•¸ãum“bGer˜of˜the˜theorem˜is˜sho“wn˜in˜the˜margin.Ž¡‘U8ä2.ŽŽŽ‘bThere–UUis“a“line“break“at“the“end“of“the“theorem“header.Ž¡‘XAdditionally‘ÿ*ª,‘‹Qsome–journals“require“di erenš¸ãt“formats“whic˜h“depGend“on“theŽ¤ ‘I\sort–Îof“theorem":‘cHe.g.“often“remarks“and“de nitions“are“set“in“Ì\upshape²,‘ìEwhileŽ¡‘IÌ\itshape–UU²is“emplo•¸ãy“ed–UUfor“main“theorems.Ž¡‘XConfronš¸ãted–$with“these“requiremen˜ts,‘-ãa“theorem“en˜vironmen˜t“w˜as“dev˜elopGed“inŽ¡‘IMainz–š}whicš¸ãh“allo˜ws“separate“determination“of“the“la˜y˜out“of“the“\theorems“sets",Ž¡‘Icomparable–UUto“Ì\pagestyle².ŽŸ!Ä‘IË2Ž‘aLËThe–ffuser“inŒÌterfaceŽŸç‘Ió$ÂÖN  cmbx12Ï2.1Ž‘gÀDe ning–€new“theorem“setsŽŸuT‘I²As–w¥in“the“original“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX“v¸ãersion,‘€9the“command“Ì\newtheorem“²de nes“a“new“\the-Ž‘ Žó%ߤN cmtt9Ð\newtheoremŽŽŽŽ¡‘I²orem–K×set"“or“\theorem-likš¸ãe“structure".‘UMTw˜o“required“argumen˜ts“name“the“newŽ¡‘Ien•¸ãvironmen“t–[íand“givš¸ãe“the“text“to“bGe“t˜ypGeset“with“eac˜h“instance“of“the“new“\set",Ž¡‘Iwhile–UUan“optional“argumenš¸ãt“determines“ho˜w“the“\set"“is“en˜umerated:Ž©‘IÌ\newtheoremó'àÉŒ cmbsy10ÒfÌfooÒgfÌbarÒgŽŽ’¾?ŲThe–ätheorem“set“Ìfoo“²(whose“name“is“Ìbar²)“uses“its“o¸ãwnŽ¡‘bcoun¸ãter.Ž¦‘IÌ\newtheoremÒfÌfoo2ÒgÌ[foo]ÒfÌbar2ÒgŽŽ’âÿ°²The–;Qtheorem“set“Ìfoo2“²(prin¸ãted“name“Ìbar2²)Ž¡‘buses–UUthe“same“coun¸ãter“as“the“theorem“set“Ìfoo².Ž¦‘IÌ\newtheoremÒfÌfoo3ÒgfÌbar3ÒgÌ[section]ŽŽ’÷ÿ¤²The–8ãtheorem“set“Ìfoo3“²(prin¸ãted“name“Ìbar3²)Ž¡‘bis–½æenš¸ãumerated“within“the“coun˜ter“Ìsection²,‘Ü0i.e.“with“ev˜ery“new“Ì\section“²theŽ¡‘benš¸ãumeration–·óbGegins“again“with“1,‘×mand“the“en˜umeration“is“compGosed“from“theŽ¡‘bsection-n•¸ãum“bGer–UUand“the“theorem“coun¸ãter“itself.Ž¦‘XAdditionally‘ÿ*ª,›Ò_the–±¡command“Ì\theoremstyle“²can“de ne“the“la•¸ãy“out–±¡of“v‘ÿqÇarious,˜orŽ‘“bÐ\theoremstyleŽŽŽŽ¡‘I²all,‘»theorem–”ƒsets.‘1It“should“bGe“noted“that“anš¸ãy“theorem“set“de ned“b˜y“Ì\newtheoremŽ¡‘I²is–†ïtš¸ãypGeset“in“the“Ì\theoremstyle“²that“is“curren˜t“at“the“time“of“the“de nition.‘,ûTh˜us,Ž¡‘Ithe‘UUfollo¸ãwingŽŸ‘[æXÐ\theoremstyle{break}‘%Ì°\newtheorem{Cor}{Corollary}ŽŸ ‘[æX\theoremstyle{plain}‘%Ì°\newtheorem{Exa}{Example}[section]Ž¦‘I²leads–zto“the“result“that“the“set“ÌCor“²is“formatted“in“the“st¸ãyle“Ìbreak²,‘ƒGwhile“the“setŽ¡‘IÌExa–K²and“all“the“folloš¸ãwing“ones“are“formatted“in“the“st˜yle“Ìplain²,‘Kˆunless“anotherŽ¡‘IÌ\theoremstyle–¨ ²folloš¸ãws.‘8 Since“the“de nitions“installed“b˜y“Ì\newtheorem“²are“global,Ž¡‘Ione–UUalso“can“limit“Ì\theoremstyle“²loGcally“b¸ãy“grouping“braces.Ž¡‘XThe–sôcš¸ãhoice“of“the“fon˜t“for“the“theorem“b•Go“dy–sôis“completely“indepGenden˜t“of“theŽ‘òf Ð\theorembodyfontŽŽŽŽ¡‘I²cš¸ãhosen–UUÌ\theoremstyle²;“this“has“pro˜v˜en“to“bGe“v˜ery“adv‘ÿqÇan˜tageous.‘qÇF‘ÿ*ªor“example,ŽŸ‘W,ÂÐ{\theorembodyfont{\upshape}‘/?Ü\newtheorem{Rem}{Remark}}ŽŽŸ’ø²2ŽŽŒ‹  ª ýs o ý´‘I²de nes–@àa“theorem“set“ÌRem²,‘{Âwhicš¸ãh“will“bGe“set“in“Ì\upshape“²in“the“curren˜t“la˜y˜outŽ¤ ‘I(whic¸ãh–™ºin“our“example“is“Ìplain²).‘3?As“with“Ì\theoremstyle²,‘¿@the“Ì\theorembodyfontŽ¡‘I²cš¸ãhosen–Ä–is“that“curren˜t“at“the“time“of“Ì\newtheorem².‘¿‹If“Ì\theorembodyfont“²is“notŽ¡‘IspšGeci ed–Êêor“one“de nes“Ì\theorembodyfont{}²,‘(Nthen“the“fon¸ãt“used“will“b˜e“thatŽ¡‘Ide ned–UUb¸ãy“the“Ì\theoremstyle².Ž¡‘XIt–+is“also“pGossible“to“customize“the“fon¸ãt“used“for“the“theorem“headers.‘ºIThisŽ‘èótÐ\theoremheaderfontŽŽŽŽ¡‘I²is,›Áho•¸ãw“ev“er,˜a–E&global“declaration,˜and“therefore“there“should“bGe“at“most“oneŽ¡‘IÌ\theoremheaderfont–UU²declaration“in“the“pream¸ãble.Ÿü^ÿ±1ŽŽŽ¡‘X²Twš¸ão–2yadditional“parameters“a ect“the“v˜ertical“space“around“the“theorem“en-Ž‘ÚƲÐ\theorempreskipamountŽŽŽŽ¡‘Ö \theorempostskipamountŽŽŽŽ¡‘I²vironmen¸ãts:‘ÄûÌ\theorempreskipamount–þï²and“Ì\theorempostskipamount“²de ne,‘)Ure-Ž¡‘IspšGectiv¸ãely‘ÿ*ª,‘êthe–ÌRspacing“b˜efore“and“after“sucš¸ãh“an“en˜vironmen˜t.‘Ö¿These“parametersŽ¡‘Iapply–H½for“all“theorem“sets“and“can“bGe“manipulated“with“the“ordinary“length“macros.Ž¡‘IThey–orare“rubbGer“lengths,–l(`ó)m#½R cmss10Ôskips²'),“and–ortherefore“can“con¸ãtain“Ìplus“²and“Ìminus“²parts.Ž¡‘XSince–Ó/the“de nition“of“theorem“sets“should|most“sensibly|bGe“placed“in“theŽ¡‘Ipream•¸ãble,‘Ûow“e–Àonly“allo¸ãw“installation“there.‘³ŸIt“is“therefore“pGossible“to“release“theŽ¡‘Imemory–í­used“here“after“Ì\begin{document}²,‘SÂin“order“to“mak¸ãe“roGom“for“otherŽ¡‘Iapplications.ŽŸêû‘IÏ2.2Ž‘gÀExisting–€theorem“st ylesŽŸuT‘I²The–UUfolloš¸ãwing“theorem“st˜yles“exist“to“date:Ž©¦­‘IÌplainŽŽ’‡¿ß²This–Nˆtheorem“stš¸ãyle“em˜ulates“the“original“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX“de nition,‘ŒÔexceptŽ¡’‡¿ßthat–J¶additionally“the“parameters“Ì\theorem...skipamount“²are“used.Ž¤ÓV‘IÌbreakŽŽ’‡¿ß²In–UUthis“stš¸ãyle,“the“theorem“header“is“follo˜w˜ed“b˜y“a“line“break.Ž¡‘IÌmarginbreakŽŽ’‡¿ß²The–9Žtheorem“n•¸ãum“bGer–9Žis“set“in“the“margin,‘?and“there“is“a“line“breakŽŸ ’‡¿ßas–UUin“Ìbreak².Ž¡‘IÌchangebreakŽŽ’‡¿ß²Likš¸ãe–UUÌbreak²,“but“with“header“n˜um˜bGer“and“text“in˜terc˜hanged.Ž¡‘IÌchangeŽŽ’‡¿ß²Header›UUn•¸ãum“bGer˜and˜text˜are˜in“terc“hanged,˜without˜a˜line˜break.Ž¡‘IÌmarginŽŽ’‡¿ß²The›UUn•¸ãum“bGer˜is˜set˜in˜the˜left˜margin,˜without˜a˜line˜break.Ž¦‘IAll–UUst¸ãyles“(except“Ìplain²)“select“Ì\slshape“²as“the“default“Ì\theorembodyfont².ŽŸêû‘IÏ2.3Ž‘gÀExamplesŽŸuT‘I²Givš¸ãen––éthe“abGo˜v˜e“theorem“sets“ÌCor²,›§NÌExa“²and“ÌRem²,˜suppGose“that“the“pream¸ãble“alsoŽŸ ‘Icon¸ãtains–UUthe“declarations:ŽŸ¦­‘[æXÐ\theoremstyle{marginbreak}‘,Â\newtheorem{Lem}[Cor]{Lemma}Ž¤ ‘[æX\theoremstyle{change}Ž¡‘[æX\theorembodyfont{\itshape}‘%Ì°\newtheorem{Def}[Cor]{Definition}ŽŸ‘[æX\theoremheaderfont{\scshape}Ž¦‘I²Then–ØHthe“folloš¸ãwing“are“some“t˜ypical“examples“of“the“t˜ypGeset“output“resulting“fromŽŸ ‘Itheir‘UUuse.Ž‘IŸ9½‰ffÿrŸ J=‘ "5Ÿý-:Á1ŽŽŽ‘LÜÀIf–kit“is“actually“necessary“to“ha•ÃŽv“e›kdi eren“t˜header˜fon“ts,‘€Wone˜has˜to˜de ne˜new˜theorem˜st“ylesŽ¤ €(substituting–dQthe“desired“fonÃŽt)“or“spxçÎ2Ž‘ILemma–Ç(Ben“User)ŽŸ ŽŽŽŽ‘IÍThis–UUis“a“senš¸ãtence“t˜ypGeset“in“the“theorem“en˜vironmen˜t“ÌLemÍ.Ž¡‘IÎ3–ÇDefinition“(Ver‘ÿUTy“impressive“Definition)ŽŽ’!Å[¹This–%Èis“a“sentenc›ÿ}'e“typ˜eset“in“theŽ¤ ‘Ithe–ÿ}'or“em›“çenvir“onment˜ÌDef¹.ŽŸý$‘X²The–wŸ'EŽ‘ãxX‘ü2Ÿÿµ"ŽŽ‘nSª².‘÷Th¸ãus,‘qÇif–8ãfor“example“Ì\theorembodyfont“²is“Ì\itshape“²and“Ì\theoremheaderfontŽ¡‘I²is–ÿhÌ\bfseries“²the“fonš¸ãt“selected“for“the“header“will“ha˜v˜e“the“c˜haracteristics“`bGoldŽ¡‘Iextended–Svitalic'.‘q'If“this“is“not“desired“one“should“set“the“Ì\theoremheaderfont“²toŽ¡‘Isomething‘UUlik¸ãeŽŸø`‘eY„Ð\theoremheaderfont{\normalfont\bfseries}ŽŸø`‘I²i.e.–UUsupplying“all“necessary“fon¸ãt“informations“explicitly‘ÿ*ª.Ž¦‘IË4Ž‘aLËAc•ŒÌkno“wledgemen“tsŽŸç‘I²The–.¸publication“of“this“set“of“macros“w¸ãas“only“pGossible“with“the“help“of“ChristinaŽ¡‘IBusse–_¹(translating“the“manš¸ãuscript“in˜to“English),‘bRJoac˜him“P˜ense“(pla˜ying“the“r^‘úÿÿoleŽ¡‘Iof–Õ©tš¸ãypist),‘5¾Chris“Ro˜wley“(loGoking“ev˜erything“o˜v˜er)“and“man˜y“others“pro˜vidingŽ¡‘Iuseful‘UUsuggestions.Ž¦‘IË5Ž‘aLËThe–ffdos3cumenšŒÌtation“driv˜er“ leŽŸç‘I²The–ºnext“bit“of“cošGde“con¸ãtains“the“do˜cumenš¸ãtation“driv˜er“ le“for“T‘þU>Ÿ'EŽ‘ãxX,–›Ói.e.,“the‘º leŽ¡‘Ithat–V’will“prošGduce“the“do˜cumenš¸ãtation“y˜ou“are“curren˜tly“reading.‘ÜIt“will“bGe“extractedŽ¡‘Ifrom–·¹this“ le“b¸ãy“the“Ìdocstrip“²program.‘=>Since“it“is“the“ rst“coGde“in“the“ le“one“canŽ¡‘Ialternativ¸ãely–(¯prošGcess“this“ le“directly“with“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX‘ü2Ÿÿµ"ŽŽ‘+¥²to“obtain“the“do˜cumen¸ãtation.ŽŸü0‘Lüs±1Ž‘Sª®ó©±Ê cmsy9Éhó*ÒoÇw cmss9ÕdriverŽ‘oÉiŽ¤ ‘Lüs±2Ž‘Sª®Ð\documentclass{ltxdoc}Ž¡‘Lüs±3ŽŽ¡‘Lüs4Ž‘Sª®Ð\usepackage{theorem}Ž¡‘Lüs±5ŽŽ¡‘Lüs6Ž‘Sª®ÉhÆ+ÕdriverŽ‘ÔÉió-ßêŸ'EŽ‘ãxX“de nition,‘|èw˜e“set“the“default“theorem“st˜yleŽ¡‘Ito–UUÌplain²,“whicš¸ãh“implemen˜ts“the“usual“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX“con˜v˜en˜tion.Ž¦‘I±38Ž‘Sª®Ð\newtoks\theorem@styleŽŸ ‘I±39Ž‘Sª®Ð\global\theorem@style{plain}ŽŸ­·‘ó­ \theorembodyfontŽŽ¡‘îót\theorem@bodyfontŽŽŽŽŽ‘I²If–¨Æthe“Ì\theorembodyfont“²is“set“bš¸ãy“the“user“then“it“should“not“in˜teract“with“the“de-Ž¡‘Ifault–‘fonš¸ãt“set“in“the“theorem“st˜yle.‘0ŠWhen“the“new“fon˜t“selection“is“in“force“this“ma˜yŽ¡‘IhappGen–™üif,›«&for“example,˜the“default“is“Ì\itshape“²and“the“new“Ì\theorembodyfontŽ¡‘I²is–#ÂÌ\sffamily².‘aASo“wš¸ãe“add“a“Ì\reset@font“²command“in“fron˜t“of“the“user“de nition.Ž¡¦‘I±40Ž‘Sª®Ð\gdef\theorembodyfont#1{%ŽŸä’‘I²W‘ÿ*ªe›qBc•¸ãhec“k˜if˜the˜argumen“t˜supplied˜is˜empt“y˜and˜if˜so˜put˜nothing˜in“to˜theŽ¡‘IÌ\theorem@bodyfont–Ò6²tokš¸ãen“register“to“allo˜w“for“Ì\theorembodyfont{}“²as“a“meanŽ¡‘Iof–UUusing“the“default“of“the“curren¸ãt“Ì\theoremstyle².Ž¦‘I±41Ž‘a×pÐ\def\@tempa{#1}%Ž¤ ‘I±42Ž‘a×pÐ\ifx\@tempa\@emptyŽ¡‘I±43Ž‘f‘Ð\theorem@bodyfont{}%Ž¡‘I±44Ž‘a×pÐ\elseŽ¡‘I±45Ž‘f‘Ð\theorem@bodyfont{\reset@font#1}%Ž¡‘I±46Ž‘a×pÐ\fiŽ¡‘I±47Ž‘a×pÐ}Ž¡‘I±48Ž‘Sª®Ð\newtoks\theorem@bodyfontŽ¡‘I±49Ž‘Sª®Ð\global\theorem@bodyfont{}ŽŸ­·‘ê9Þ\theoremheaderfontŽŽŽ‘I²The–ŠTfonš¸ãt“for“the“theorem“headers“is“handled“di eren˜tly“bGecause“this“de nitionŽŸ ‘Iapplies–UUto“all“theorem“st¸ãyles.Ž¦‘I±50Ž‘Sª®Ð\gdef\theoremheaderfont#1{\gdef\theorem@headerfont{#1}%ŽŸä’‘I²After–UUusing“the“macro“once“it“is“rede ned“to“proGduce“an“error“message.Ž¦‘I±51Ž‘t½ÈÐ\gdef\theoremheaderfont##1{%Ž¡‘I±52Ž‘yw^Ð\typeout{\string\theoremheaderfont\space–¹–should“be“usedŽ¡‘I±53Ž’£ý¤Ðonly‘¹–once.}}}ŽŸ­·‘å€H\theorem@headerfontŽŽŽ‘I²T‘ÿ*ªo–¥‚set“the“Ì\theorem@headerfont“²default“wš¸ãe“ rst“test“if“the“new“fon˜tselectionŽ¤ ‘Isc¸ãheme–UUis“in“force.Ž¦‘I±54Ž‘Sª®Ð\ifx\upshape\undefinedŽŸä’‘I²If–Úxnot“wš¸ãe“de ne“it“to“expand“in˜to“Ì\bfseries².‘1W‘ÿ*ªe“don't“use“Ì\let“²just“in“case“aŽ¡‘Ifollo•¸ãwing›UUst“yle˜option˜rede nes˜this˜macro.Ž¦‘I±55Ž‘Sª®Ð\gdef\theorem@headerfont{\bfseries}ŽŸä’‘I²Otherwise–UUwš¸ãe“reset“the“curren˜t“shapšGe“b˜efore“calling“Ì\bfseries².Ž¦‘I±56Ž‘Sª®Ð\else‘¹–\gdef\theorem@headerfont{\normalfont\bfseries}\fiŽŸ­·‘À$\th@plainŽŽ¡‘À$\th@breakŽŽŽŽ¡¡‘øf \th@marginbreakŽŽŽŽ¡¡¡‘øf \th@changebreakŽŽŽŽ¡¡¡¡‘Ž\th@changeŽŽŽŽ¡¡¡¡¡‘Ž\th@marginŽŽŽŽŽ‘I²The–áêdi erenš¸ãt“st˜yles“are“de ned“in“macros“suc˜h“as“Ì\th@plain².‘ …Since“memoryŽ¡‘Ispace–ùis“precious“in“\non-Big-v•¸ãersions",‘!ñw“e›ùha“v“e˜to˜a“v“oid˜o ering˜toGo˜man“y˜un-Ž¡‘Iused–‚ˆde nitions.‘ù_Therefore“wš¸ãe“de ne“these“st˜yles“in“separate“ les“that“can“bGeŽŽŸ’ø6ŽŽŒ‹=Ï ª ýs o ý´‘I²loaded–iÄon“demand.‘¯Thš¸ãus“the“commands“themselv˜es“only“load“these“ les.‘¯W‘ÿ*ªe“useŽ¤ ‘IÌ\@input@–4I²a“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX‘ü2Ÿÿµ"ŽŽ‘-¼<²in¸ãternal“command“that“ensures“that“the“ le“will“bGe“listedŽ¡‘Iwith‘UUÌ\listfilesŽŸ‘I±57Ž‘Sª®Ð\gdef\th@plain{\@input@{thp.sty}}Ž¤ ‘I±58Ž‘Sª®Ð\gdef\th@break{\@input@{thb.sty}}Ž¡‘I±59Ž‘Sª®Ð\gdef\th@marginbreak{\@input@{thmb.sty}}Ž¡‘I±60Ž‘Sª®Ð\gdef\th@changebreak{\@input@{thcb.sty}}Ž¡‘I±61Ž‘Sª®Ð\gdef\th@change{\@input@{thc.sty}}Ž¡‘I±62Ž‘Sª®Ð\gdef\th@margin{\@input@{thm.sty}}ŽŸ‘I²This–EÚlist“will“bšGe“expanded“when“new“st¸ãyles“b˜ecome“a¸ãv‘ÿqÇailable.‘CVF‘ÿ*ªor“testing,‘ûjustŽ¤ ‘IappšGend–UUnew“theorem“subst¸ãyles“as“do˜cumen¸ãt“options.ŽŸþ6‘IÏ6.2Ž‘gÀDe nition–€of“a“new“theorem“setŽŸuT‘I²As–­Valready“pGoinš¸ãted“out,‘ÃWa“new“theorem“en˜vironmen˜t“can“bGe“de ned“in“three“dif-Ž¡‘Iferen•¸ãt‘UUw“a“ys:ŽŸ‘[æXÐ\newtheorem{Lem}{Lemma}Ž¤ ‘[æX\newtheorem{Lem}{Lemma}[section]Ž¡‘[æX\newtheorem{Lem}[Theorem]{Lemma}Ž©‘I²The–ôƒfunction“of“the“macro“Ì\newtheorem“²is“to“recognize“these“cases“and“then“toŽ¤ ‘Ibranc•¸ãh›uÊin“to˜one˜of˜the˜three˜macros˜Ì\@ynthm²,‘¢€Ì\@xnthm˜²or˜Ì\@othm².‘'DThis˜mec“hanismŽ¡‘Iis–é•adopted“uncš¸ãhanged“from“[2Ž‘];‘ €the“essen˜tial“pGoin˜t“here“is“that,›ÿ"for“example,˜in“theŽ¡‘Isecond–?case,›the“argumen¸ãts“ÌLem²,˜ÌLemma“²and“Ìsection“²are“passed“o•¸ãv“er–?to“the“macroŽ¡‘IÌ\@xnthm².Ž¡‘XW‘ÿ*ªe–/[inspšGect“this“case“ rst“b˜ecause“the“others“presenš¸ãt“few˜er“problems,‘6ôand“th˜usŽ¡‘Iare–UUeasily“deriv¸ãed“from“this“one.ŽŸ‘3PÐ\@xnthmŽŽŽ‘I²F‘ÿ*ªor–UUour“example“argumenš¸ãts,“the“macro“Ì\@xnthm“²m˜ust“ful ll“the“follo˜wing:Ž¦‘X¸ŽŽŽ‘b²De ne–UUa“new“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX-coun¸ãter“`Lem'Ž¦‘X¸ŽŽŽ‘b²reset–UUthis“coun¸ãter“within“a“Ì\sectionŽ¦‘X¸ŽŽŽ‘b²de ne–UUthe“macro“Ì\theLemŽ¦‘X¸ŽŽŽ‘b²de ne–8ãthe“en•¸ãvironmen“t–8ãmacros“Ì\Lem“²and“Ì\endLem“²using“the“curren¸ãt“Ì\theoremstyleŽ¡‘b²and‘UUÌ\theorem@bodyfont².Ž¦‘IObš¸ãviously‘ÿ*ª,‘îEall–Ôthis“should“happGen“only“if“the“ rst“argumen˜t“of“Ì\@xnthm“²(i.e.“ÌLem“²inŽ¡‘Iour–¿pexample)“is“cš¸ãhosen“so“as“not“to“con ict“with“an˜y“previously“de ned“commandsŽ¡‘Ior›UUen•¸ãvironmen“ts.‘qÇThis˜test˜is˜pGerformed˜b“y˜the˜LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX˜macro˜Ì\@ifdefinable².Ž©‘I±63Ž‘Sª®Ð\gdef\@xnthm#1#2[#3]{\expandafter\@ifdefinable\csname‘¹–#1\endcsnameŽŸ‘I²Therefore,‘ +the–û! rst“argumen¸ãt“of“Ì\@ifdefinable“²is“the“expansion“(in“the“example,Ž¡‘IÌ\Lem²)–Öºof“Ì\csname#1\endcsname².‘G”The“second“argumen¸ãt“is“executed“only“if“the“testŽ¡‘Ihas–UUbGeen“completed“successfully‘ÿ*ª.Ž¦‘I±64Ž‘a×pÐ{%ŽŸ‘I²No•¸ãw›ý¿w“e˜de ne˜the˜new˜coun“ter.‘T•The˜names˜of˜the˜LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX˜macros˜emplo“y“ed˜shouldŽ¡‘IspGeak–UUfor“themselv¸ães:Ž¦‘I±65Ž‘f‘Ð\@definecounter{#1}\@newctr{#1}[#3]%ŽŽŸ’ø²7ŽŽŒ‹Ka ª ýs o ý´‘I²Using–þÌ\@newctr“²will“givš¸ãe“a“propGer“error“message“if“the“coun˜ter“in“Ì#3“²is“not“de-Ž¤ ‘I ned.‘DBIn–›~de ning“`Ì\theLem²'“wš¸ãe“m˜ust“generate“the“desired“macro“name“b˜y“use“ofŽ¡‘IÌ\expandafter–UU²and“Ì\csname².Ž©‘I±66Ž‘f‘Ð\expandafter\xdef\csname‘¹–the#1\endcsnameŽŸ‘I²An–ODÌ\xdef“²is“used“in“order“to“mak¸ãe“the“de nition“global,‘¿and“to“ensure“that“itŽ¡‘Iconš¸ãtains–¶the“replacemen˜t“texts“of“Ì\@thmcountersep“²and“Ì\@thmcounter².Ÿü^ÿ±3ŽŽ‘ /]²Ho˜w-Ž¡‘Iev•¸ãer,‘:Önot›Ù¼ev“erything˜should˜bGe˜expanded.‘þýF‘ÿ*ªor˜example,‘:Öit˜sa“v“es˜space˜to˜useŽ¡‘IÌ\thesection–UU²instead“of“its|at“times|length¸ãy“expansion.Ž¦‘I±67Ž‘p2Ð{\expandafter–¹–\noexpand“\csname“the#3\endcsnameŽŸ ‘I±68Ž‘t½ÈÐ\@thmcountersep‘¹–\@thmcounter{#1}}%ŽŸ‘I²Thš¸ãus–jßwith“the“defaults“of“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX,‘°AÌ\theLem“²w˜ould“bGe“replaced“b˜y“the“commandŽ¡‘Isequence‘UUÌ\thesection.\arabic{Lem}².Ž¡‘XW‘ÿ*ªe–ôOwill“noš¸ãw“loGok“at“the“de nition“of“the“macro“whic˜h“is“executed“at“theŽ¡‘IbGeginning–Úéof“the“actual“en•¸ãvironmen“t–Úé(in“our“example“this“macro“is“Ì\Lem²).‘ „ItŽ¡‘Ishould–¤¾bGe“noted“that“wš¸ãe“use“an“\Ì\expandafter“²tric˜k"“to“expand“only“certainŽ¡‘Iparts–UUof“the“replacemen¸ãt“text“at“the“time“of“the“de nition.Ž¦‘I±69Ž‘f‘Ð\def\@tempa{\global\@namedef{#1}}%ŽŸ ‘I±70Ž‘f‘Ð\expandafter–¹–\@tempa“\expandafter{%ŽŸ‘I²First,‘(Ãthe–ËGmacro“that“conš¸ãtains“the“curren˜t“de nitions“of“Ì\@begintheorem“²andŽ¡‘IÌ\@opargtheorem–¥3²should“bGe“called“up.‘aaThe“name“of“this“macro|as“is“alreadyŽ¡‘Iknoš¸ãwn|has–UUthe“form“Ì\th@¸h¹the–ÿ}'or“em‘“çstyle‘À[¸iŽ‘A¥9²;“therefore,“it“m˜ust“bGe“called“b˜yŽ¦‘I±71Ž‘p2Ð\csname–¹–th@\the“\theorem@styleŽŸ‘I²In–P”addition“the“default“theorem“fonš¸ãt“should“bGe“c˜hangeable,‘„»i.e.“w˜e“ha˜v˜e“to“insert“theŽ¡‘Icon•¸ãten“ts–©fof“Ì\theorem@bodyfont².‘8xF‘ÿ*ªor“that“reason,‘ËÊwš¸ãe“expand“ev˜en“further,‘ËÊbGey˜ondŽ¡‘IÌ\endcsname²,‘’Nand–aŒthš¸ãus“insert“the“con˜ten˜ts“of“the“Ôtok˜en“²register“Ì\theorem@bodyfontŽ¡‘I²in–UUthe“replacemen¸ãt“text.Ž¦‘I±72Ž’Œ]¶Ð\expandafter–¹–\endcsname“\the“\theorem@bodyfontŽŸ‘I²Noš¸ãw– çit“is“time“to“call“the“macro“Ì\@thm“²whic˜h“tak˜es“o˜v˜er“the“further“proGcessing.‘YMItŽ¡‘Ihas›ÿ…t•¸ãw“o˜argumen“ts:‘Fßthe˜curren“t˜coun“ter˜name˜(in˜our˜example,–¯ÌLem²),“and˜the˜textŽ¡‘Iof–UUthe“labGel“(in“our“example,“ÌLemma²).Ž¦‘I±73Ž‘kJœÐ\@thm{#1}{#2}}%ŽŸ‘I²With–þ×this,‘i7the“`sub-de nition'“is“complete.‘ nMThe“macro“Ì\@endtheorem“²ends“aŽ¡‘Itheorem›ŽÀen•¸ãvironmen“t˜and˜is,–Ýso˜far,“nothing˜but˜an˜Ì\endtrivlist².‘(Hence˜itŽ¡‘Iis–Dgde ned“globally‘ÿ*ª,›€+and“not“within“the“theorem“st•¸ãyles.Ÿü^ÿ±4ŽŽ‘|s²)‘>ýTherefore,˜w“e–Dgcan“setŽ¡‘Iit–]equiv‘ÿqÇalen¸ãt“to“the“macro“that“ends“the“theorem“set“(in“our“example,‘ŸÌ\endLem²).Ž¡‘IHo•¸ãw“ev“er,‘¯“if–†"some“daš¸ãy“theorem“st˜yles“exist“that“do“c˜hange“Ì\@endtheorem²,‘¯“w˜e“w˜ouldŽ¡‘Iha•¸ãv“e–UUto“use“the“commen¸ãted-out“line“instead.Ž¦‘I±74Ž‘f‘Ð\global–¹–\expandafter“\let“\csname“end#1\endcsname“\@endtheoremŽŸ ‘I±75Ž‘Sª®Ð%‘,Â\global\@namedef{end#1}{\@endtheorem}%ŽŸ‘I²With–nthese“commands“all“the“required“de nitions“are“emplo•¸ãy“ed,‘N4unless–nthe“testŽ¡‘IÌ\@ifdefinable–lj²has“failed.‘·Therefore,‘r/wš¸ãe“end“the“second“argumen˜t“of“this“macroŽ¡‘Iand–UUwith“it“the“de nition“of“Ì\@xnthm².Ž¦‘I±76Ž‘a×pÐ}}Ž‘IŸ&e‰ffÿrŸ J=‘ "5Ÿý-:Á3ŽŽŽ‘LÜÀThese›Ì&t•ÃŽw“o˜macros˜can˜b‘ "5Ÿý-:Á4ŽŽŽ‘LÜÀThis–ÿ´has“to“bšŸ'EŽ‘ãxX.‘N˜In“order“to“mak¸ãe“the“macros“easier“to“understand,Ž¡‘Iwš¸ãe–UUwill“nev˜ertheless“presen˜t“it“(commen˜ted“out).Ž¦‘E±103Ž‘Sª®Ð\global\let\@xthm\relaxŽ¤ ‘E±104Ž‘Sª®Ð%‘¹–\def\@ythm#1#2[#3]{\@opargbegintheorem{#2}{\csnameŽ¡‘E±105Ž‘Sª®Ð%‘3ùrthe#1\endcsname}{#3}\ignorespaces}Ž¡‘E±106Ž‘Sª®ÉhÈ=Õpack¾9ageŽ‘#g ÉiŽŸ‘I²The–ƒ’primitivš¸ãe“Ì\ignorespaces“²in“Ì\@ythm“²and“Ì\@thm“²is“needed“to“remo˜v˜e“the“spacesŽ¤ ‘IbGet•¸ãw“een–UUthe“Ì\begin{...}“²and“the“actual“text.ŽŸþ6‘IÏ6.4Ž‘gÀDe nition–€of“the“theorem“subst ylesŽ©uT‘I²As–kalready“pGoinš¸ãted“out,‘Ýðthe“theorem“subst˜yles,‘Ýðde ned“bGelo˜w,‘Ýðare“only“loadedŽ¡‘Iwhen–ênecessary‘ÿ*ª.‘§…Note“that“all“these“subst¸ãyles,›Aexcept“Ìplain²,˜ha•¸ãv“e–êÌ\slshape“²asŽ¡‘Ithe–UUdefault“b•Go“dy‘UUfon¸ãt.ŽŸþ6‘Ió&ò"V cmbx10Ñ6.4.1Ž‘l#‚The–ÕTÌplain“Ñst®9yleŽ¦‘I²As–Àthe“folloš¸ãwing“macros“use“Ì@²,‘%«w˜e“ha˜v˜e“to“loGcally“set“the“Ì\catcode“²of“this“sym˜bGolŽ¡‘Ito–Yr\letter".‘~This“happGens“within“a“group,‘Zyso“that“wš¸ãe“do“not“ha˜v˜e“to“w˜orry“abGoutŽ¡‘Iwhicš¸ãh–UUÌ\catcode“²that“sym˜bšGol“had“b˜efore.Ž©‘E±107Ž‘Sª®ÉhÕthpŽ‘…KÉiŽŸ ‘E±108Ž‘Sª®Ð\begingroup‘¹–\makeatletterŽŸ‘I²Since–r5wš¸ãe“are“no˜w“within“a“group,‘ylw˜e“m˜ust“mak˜e“all“de nitions“globally‘ÿ*ª.‘ÈfFirst“w˜eŽ¡‘Imakš¸ãe–N¤sure“that“Ìtheorem.sty“²is“loaded.‘]´This“will“allo˜w“us“to“use“this“ le“as“aŽ¡‘IdoGcumen•¸ãt›_Hst“yle˜option˜without˜ha“ving˜to˜call˜Ìtheorem˜²itself˜as˜an˜option.‘¡A“t˜theŽ¡‘Isame–18time,‘8qwš¸ãe“assure“that“at“least“v˜ersion“2“is“loaded,‘8qsince“Ì\theorem@style“²w˜asŽ¡‘Inot–UUde ned“in“earlier“v¸ãersions.Ž¦‘E±109Ž‘Sª®Ð\@ifundefined{theorem@style}{\input{theorem.sty}}{}Ž¤ ‘E±110Ž‘Sª®Ð\ProvidesFile{thp.sty}Ž¡‘E±111Ž’‘LÐ[\FMithmInfo]ŽŸ‘À$\th@plainŽŽŸ ‘ý 6\@begintheoremŽŽŽŽ¤ ¡‘å€H\@opargbegintheoremŽŽŽŽŽ‘IÌ\theoremstyle{plain}–Œ"²correspGonds“to“the“original“de nition,‘´`except“that“the“dis-Ž¤ ‘Itances–8ãto“the“surrounding“text“are“determined“b¸ãy“the“parameters“Ì\theorempreskipamountŽ¡‘I²and–UUÌ\theorempostskipamount².‘qÇFirst“wš¸ãe“set“the“default“b•Go“dy‘UUfon˜t.Ž¦‘E±112Ž‘Sª®Ð\gdef\th@plain{\normalfont\itshapeŽŸ‘I²Then–°cwš¸ãe“de ne“Ì\@begintheorem“²and“Ì\@opargbegintheorem².‘‚òThese“t˜w˜o“macrosŽ¡‘Ide ne–C&hoš¸ãw“the“header“of“a“theorem“is“t˜ypšGeset.‘bÌ\@opargbegintheorem“²will“b˜e“calledŽ¡‘Iif–Ga“Ôtheoš¸ãrem“²en˜vironmen˜t“with“an“optional“argumen˜t“is“encoun˜tered;‘¿úotherwise,Ž¡‘Ithe–ýwheader“is“constructed“b¸ãy“calling“Ì\@begintheorem².‘j,If“one“of“these“macros“isŽŽŸ’õÿ10ŽŽŒ‹ u¢ ª ýs o ý´‘I²executed,‘ÁÝwš¸ãe–¬(are“within“a“Ôtrivlist“²en˜vironmen˜t“started“b˜y“Ì\@thm².‘vASo“the“theoremŽ¤ ‘Iheader–UUis“proGduced“with“an“Ì\item“²command.Ž¡‘XInstead–Fof“spGecifying“the“header“fonš¸ãt“directly‘ÿ*ª,‘Âäthis“is“only“a“v‘ÿqÇarianš¸ãt“of“the“theorem“st˜yles“describšGed“ab˜o•¸ãv“e–>äwithout“an¸ãyŽŸ ‘Inew‘UUideas.Ž¦‘E±184Ž‘Sª®Ð\gdef\th@margin{\normalfont\slshapeŽ¡‘E±185Ž‘]ÚÐ\def\@begintheorem##1##2{\itemŽ¡‘E±186Ž‘t½ÈÐ[\theorem@headerfont–¹–\llap{##2}\hskip\labelsep“##1]}%Ž¡‘E±187Ž‘Sª®Ð\def\@opargbegintheorem##1##2##3{%Ž¡‘E±188Ž‘]ÚÐ\item[\theorem@headerfont–¹–\llap{##2}\hskip\labelsep“##1\“(##3)]}}Ž¡‘E±189Ž‘Sª®Ð\endgroupŽ¡‘E±190Ž‘Sª®ÉhÈ=ÕthmŽ‘ÉiŽŸþ6‘IÏ6.5Ž‘gÀFinal‘€De nitionsŽŸuT‘Ü Ð\theorempreskipamountŽŽŸ ‘×S†\theorempostskipamountŽŽŽŽŽ‘I²The–Ô"Ôskip“²parameters“that“regulate“the“vš¸ãertical“empt˜y“space“bGefore“and“after“theŽŸ ‘IÌtheorem›UU²en•¸ãvironmen“t˜ha“v“e˜to˜b•Ge˜allo“cated˜as˜w¸ãell.Ž¦‘E±191Ž‘Sª®ÉhÕpack¾9ageŽ‘#g ÉiŽ¡‘E±192Ž‘Sª®Ð\newskip\theorempreskipamountŽ¡‘E±193Ž‘Sª®Ð\newskip\theorempostskipamountŽŸ‘I²Since–'3wš¸ãe“ha˜v˜e“used“the“same“v‘ÿqÇalues“for“all“theorem“sets,‘0mw˜e“no˜w“can“assign“them.Ž¦‘E±194Ž‘Sª®Ð\global\setlength\theorempreskipamount{12pt–¹–plus“5pt“minus“3pt}Ž¡‘E±195Ž‘Sª®Ð\global\setlength\theorempostskipamount{8pt–¹–plus“3pt“minus“1.5pt}ŽŽŸ’õÿ²13ŽŽŒ‹›“ ª ýs o ý´‘“bÐ\@endtheoremŽŽŽ‘I²The–Ø=same“holds“for“the“macro“Ì\@endtheorem²,‘ñBwhicš¸ãh“ends“a“Ìtheorem“²en˜vironmen˜t.Ž¤ ‘ISince–£éit“is“the“same“for“all“theorem“sets,‘Çfit“is“remo•¸ãv“ed–£éfrom“the“macros“Ì\th@¸h¹style‘À[¸iŽ‘ó†².Ž¡‘IIt–UUsimply“ends“the“Ìtrivlist“²en•¸ãvironmen“t,›UUwhic“h˜w“as˜bGegun˜in˜Ì\@thm².Ž©‘E±196Ž‘Sª®Ð\global\let\@endtheorem=\endtrivlistŽŸ‘ý 6\@preamblecmdsŽŽŽ‘I²All–¬cmacros“de ned“abšGo•¸ãv“e–¬care“to“b˜e“used“only“in“the“pream•¸ãble.‘9wTherefore,‘Î-w“e‘¬cinsertŽ¡‘Ithem–žin“Ì\@preamblecmds“²whic¸ãh“will“disable“them“at“bšGegin“do˜cumen¸ãt.‘4µThis“is“doneŽ¡‘Ibš¸ãy–UUthe“in˜ternal“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX‘ü2Ÿÿµ"ŽŽ‘+þT²command“Ì\@onlypreamble².Ž¦‘E±197Ž‘Sª®Ð\@onlypreamble\@xnthmŽ¤ ‘E±198Ž‘Sª®Ð\@onlypreamble\@ynthmŽ¡‘E±199Ž‘Sª®Ð\@onlypreamble\@othmŽ¡‘E±200Ž‘Sª®Ð\@onlypreamble\newtheoremŽ¡‘E±201Ž‘Sª®Ð\@onlypreamble\theoremstyleŽ¡‘E±202Ž‘Sª®Ð\@onlypreamble\theorembodyfontŽ¡‘E±203Ž‘Sª®Ð\@onlypreamble\theoremheaderfontŽŸ‘X²Finally–UUwš¸ãe“declare“the“Ìplain“²theorem“st˜yle“to“bGe“the“default.Ž¦‘E±204Ž‘Sª®Ð\theoremstyle{plain}Ž¡‘E±205Ž‘Sª®ÉhÈ=Õpack¾9ageŽ‘#g ÉiŽŸ!Ä‘IËReferencesŽŸç‘I²[1]ŽŽ‘XŽ;ÎM.–…WGoossens²,‘7ÏÎF.“MittelbaÇch– ƒ²and“ÎA.‘…WSamarin².‘ŠÛThe“LŸýó5‘üff±AŽŽ‘͉²T‘þU>Ÿ'EŽ‘ãxX“Companion.ŽŸ ‘XŽ;Addison-W–ÿ*ªesley“,–UUReading,“Massac•¸ãh“usetts,‘UU1994.ŽŸ‘I[2]ŽŽ‘XŽ;ÎLampor‘ÿUTt,‘ÇLeslie.‘nïÌlatex.tex²,–UUv¸ãersion“2.09,“date“F‘ÿ*ªeb.“1990.ŽŽŸ’õÿ14ŽŽŒø¦ƒ’À;説 ó0߆µT cmtt12ó-ßê cmmi10óKñ`y cmr10óÙ“ Rcmr7ù¬zßßßßß