我包含了 algorithm2e 并开始收到错误消息“algorithm2e.sty command\procedure already defined”。 以下是我的 latex 文件中的包列表
\documentclass[useAMS,usenatbib]{coin.cls}
\def\bSig\mathbf{\Sigma}
\newcommand{\VS}{V\&S}
\newcommand{\tr}{\mbox{tr}}
%\usepackage[figuresright]{rotating}
\usepackage[vlined,ruled,linesnumbered, algo2e]{algorithm2e}
\usepackage{multirow}
\usepackage{graphicx}
\usepackage{float}
\usepackage{hyperref}
\usepackage{wrapfig}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{stfloats}
答案1
如果你指的是coin.cls
是合作推论的在达尔豪西大学计算机科学系的telligence 小组,那么解决方案就相当简单了如果你想继续使用algorithm2e
:将\procedure
和\endprocedure
宏设置为\relax
。
% https://projects.cs.dal.ca/ci/latex/template-files/coin.cls
\documentclass{coin}
\let\procedure\relax
\let\endprocedure\relax
\usepackage[algo2e]{algorithm2e}
\begin{document}
\begin{algorithm2e}[H]
\SetAlgoLined
\KwData{this text}
\KwResult{how to write algorithm with \LaTeX2e }
initialization\;
\While{not at end of this document}{
read current\;
\eIf{understand}{
go to next section\;
current section becomes this one\;
}{
go back to the beginning of current section\;
}
}
\caption{How to write algorithms}
\end{algorithm2e}
\end{document}
所以如果你不打算使用这些类似定理的结构,那么就不应该有任何其他冲突。
algorithm
和环境均在文档类procedure
中预定义coin
为定理:
\newtheorem{algorithm}{Algorithm}%[theorem]
%...
\newtheorem{procedure}{Procedure}%[section]
通过使用选项algorithm
可以避免环境定义,这会创建一个浮点数而不是。algo2e
algorithm2e
algorithm2e
algorithm