Как с помощью окружения theorem создать новое окружение, которое автоматически нумерует определения в тексте?

Сделал вот так

\newenvironment{opredelenie}{
    \newtheorem{theorem}{Определение}
    \begin{theorem}     
    \end{theorem}
}

Первый вызов выводится как надо, но проблема в том, что при вызове повторно происходит ошибка

Command \theorem already defined. \begin{opredelenie}

из-за того что newtheorem вызывается тоже повторно Можно-ли как то сделать так, чтобы эта команда вызывалась единожды?


Ответы (1 шт):

Автор решения: Vladimir

Совершенно не понятно, что вызывает у Вас сложности с заданием окружения командой \newtheorem. Эта команда сама создает окружение с указанным именем и создает соответствующий счетчик. Для примера, я определил новые окружения для теорем и для определений и вывел значения их счетчиков, чтобы было видно, что для каждого такого окружения создается именно свой уникальный счетчик. Если нужна более тонкая настройка заголовка и текста теоремы (определения), то можно еще воспользоваться пакетом nccthm.

\documentclass[a4paper,12pt]{article}
\usepackage[utf8]{inputenc}
\usepackage[russian]{babel}

\newtheorem{theorem}{Теорема}
\newtheorem{definit}{Определение}

\begin{document}
    \begin{theorem}
       Текст какой-то теоремы
    \end{theorem}

    \begin{definit}
        Текст определения
    \end{definit}

    \noindent
    Счетчик для определений: \thedefinit \\
    Счетчик для теорем: \thetheorem
\end{document}

введите сюда описание изображения

→ Ссылка