I want to number successive theorems with hierarchical counting (top level counter n, sub level counter m) in a way that I can chose from the following options for each theorem:
Theorem n.(increases n-counter, resets m-counter)Theorem n.m.(increases n-counter, resets m-counter)Theorem n.m.(increases m-counter)
To allow sth. like
Theorem 1.
Theorem 2.1
Theorem 2.2.
Theorem 3.
Theorem 3.1.
In fact, a quite liberal numbering should be possible, with multiple levels and custom counting-style (arabic, alph, ...).
There are some related answers:
But all define new theorem environments, so you have to use different environments for the different numbering options. The problem with this is that I already have some theorem environments and I want to use this counting scheme for all of them in the same way (at the moment, they just use the same counter).
So is there any way to achieve this without creating new versions of each theorem environment for each numbering option?
If not, a conclusion would be that, if you want to compose multiple independent style parameters for theorems (e.g. the numbering way, the header/body font, ...), you would have to create an own environment for each combination. This would produce much redundance and would be hard to maintain. Is it like that?
Ideas:
Is it possible to have a counter to be passed at
\renewtheorem{th}[counter]{Theorem}which counts likem.nand can be increased manually inmandn?Can you create environments with options, so when opening a new theorem environment you pass the numbering option?



ntheorempackage - specifically your definition ofth. Also, are you fixed on usingntheorem, or would you be willing to roll your own? – Werner Jun 04 '14 at 18:19