2009-06-16 17 views
5

Mam problem z numeracją twierdzeń w LaTeX. mogę ilość w podrozdziale npNumeracja twierdzeń w LaTeX

Twierdzenie 1.2.1

dla pierwszego twierdzenie w drugiej podsekcji pierwszej sekcji. Ale muszę to pokazać mi tylko numery podsekcji i twierdzenia, ale nie numer sekcji, na przykład:

Twierdzenie 2,1

używam

\newtheorem{thm}{Theorem}[subsection] 

do numeracji.

+18

Proszę, nie rób tego. Jako częsty czytelnik książek matematycznych * nienawidzę * go, gdy książki używają tego stylu numerowania. Jeśli to zrobisz, mówiąc: "Twierdzenie 3.2" staje się niejednoznaczne: w wielu miejscach może odnosić się do wielu możliwych twierdzeń i nie sprawia, że ​​skomplikowany materiał jest łatwiejszy do zrozumienia. – kquinn

+1

Jestem dekadę późno w odpowiedzi na KQINN, ale naprawdę nigdy nie uważałem tego za dwuznaczny. Powiedzenie "Twierdzenie 3.2" oznacza drugie twierdzenie trzeciej sekcji tego rozdziału. Odnosząc się do innego rozdziału, autorzy powiedzą "Twierdzenie 3.2 z rozdziału 1". Co więcej, znacznie ułatwia mi czytanie twierdzeń jako (a) w większości przypadków rozdziały są samodzielne lub mają nazywane wyniki z innych rozdziałów, do których się odnosimy, oraz (b) Lepiej parsuję Angielski niż w parsujących sekwencjach cyfr. –

+0

@BenKushigian pytanie prosi o numerację twierdzeń, która resetuje się z każdą nową * sekcją *, a nie z każdym nowym rozdziałem – McDuffin

Odpowiedz

8

Umieszczenie następujący kod w preambule wydaje się mieć pożądany efekt:

\usepackage{amsthm} 
\newtheorem{thm}{Theorem}[subsection] 
\renewcommand{\thethm}{\arabic{subsection}.\arabic{thm}} 

ja nie rozumiem, dlaczego chcesz ten szczególny system numeracji twierdzenie, ale kod robi to, co chcesz: LaTeX output

+1

Sprytny. Zauważ, że podczas gdy robi się to, o co prosiło, zależy to od wewnętrznych elementów amsthm, więc może być kruchy. Czy nie byłoby to mylące dla czytelników, skoro masz "Twierdzenie 1.1" dla pierwszego twierdzenia w każdym podrozdziale? – Naaff

+3

@Naaff Mam rację, zastanawiając się, dlaczego pytający pytający chce numerować twierdzenia w ten sposób. Osobiście uniknęłbym dwuznaczności odsyłacza, o której wspomniałeś, trzymając się domyślnej wartości section.subsection.torem lub numerując twierdzenia kolejno, bez resetowania całego dokumentu. – las3rjock

+0

Co robi ta "obrazkowa" rzecz? –

1

Czy to działa?

\newtheorem{thm}{Theorem}[section] 

Zobacz te LaTeX tips.

+0

Próbowałem już tego. To daje mi taką numerację jak "numer_rozwoju.twierdzenia", ale potrzebuję 'subsection_number.theorem_number' – jbradaric

+0

Link do poradnika LaTeX jest zepsuty – PaulrBear

-1

Wstaw ten wiersz w preambule (lub gdziekolwiek indziej przed instrukcją \ newtheorem):

\renewcommand{\thesubsection}{\arabic{subsection}} 

Spowoduje to zresetowanie polecenia numeracja w środowisku thm ignorować numery sekcji (gdy numerowania twierdzeń) i wyświetlacz tylko numery podsekcji i liczby twierdzeń. Numery sekcji będą nadal wyświetlane przed nagłówkami sekcji, a nie twierdzeniami zawartymi w sekcjach. Tak więc, jak opisujesz, pierwsze twierdzenie w drugim podrozdziale pierwszej sekcji będzie numerowane 2.1. Alternatywy \ arabskiej obejmują:

  • \ Roman - produkuje liczby rzymskiej stolicy, takich jak II.1
  • \ roman - wytwarza małych liter cyframi rzymskimi, takich jak II.1
  • \ Alph - produkuje litery, takie jak B.1
  • \ alph - produkuje małe litery, takie jak B.1
+0

Czy to nie wpłynie również na numerowane nagłówki podrozdziałów? – las3rjock

+0

Tak, masz rację, spowoduje to, że zarówno numeracje twierdzeń, jak i numeracje nagłówków podsekcji będą ignorować numery sekcji. –

+0

Ja * myślę *, chociaż nie jestem pewien, czy mógłbyś dokonać numeracji właściwej dla twierdzeń, jeśli zawarłeś linię \ renewcommand w definicji środowiska \ newtheorem. Ale oczywiście wymagałoby to ręcznego ponownego wdrożenia definicji środowiska \ newtheorem, która może nie być tego warta. –

1

nie ma łatwy sposób to zrobić. AMS Theorem Package zapewnia jedynie sposób kontrolowania, kiedy numeracja jest resetowana (sekcja, podsekcja), jeśli jest powiązana z innymi środowiskami (kolejność, lemat) i kolejność numerów ("twierdzenie 1.1" a "twierdzenie 1.1").

Twierdzenie otrzymuje numerację z polecenia \thesection lub \thesubsection. Możesz ponownie zdefiniować komendę \thesubsection, aby uzyskać pożądaną numerację, ale to również wpłynie na wszystko inne, które używa \thesubsection.

-2

można użyć tego polecenia do odnowienia punkt dowodzenia i podsekcji oraz twierdzenie i ...

\renewcommand{\theequation}{\thesection.\arabic{equation}} 
\renewcommand{\thesection}{\arabic{section}} 
\renewcommand{\thesubsection}{(\alph{subsection})}‎‎‎ 
0

W jak lekko mniej hacky sposób można stworzyć fałszywy licznik, który jest RESET subsection i przedefiniować jej \the do własnych upodobań:

\newcounter{fakecnt}[subsection] 
\def\thefakecnt{\arabic{subsection}} 
\newtheorem{thm}{Theorem}[fakecnt]