# How to change the year 1991 to 2020 of Mathematics Subject Classification in amsart

\documentclass[12pt, reqno]{amsart}
\usepackage{amsmath, amsthm, amscd, amsfonts, amssymb, graphicx, color}

\textheight 22.5truecm \textwidth 14.5truecm
\setlength{\oddsidemargin}{0.35in}\setlength{\evensidemargin}{0.35in}

\setlength{\topmargin}{-.5cm}
\begin{document}
\setcounter{page}{1}

\title[Short Title]{Title of Paper}
\author{}
\subjclass[2020]{Primary 39B82; Secondary 44B20, 46C05.}

\keywords{}
\end{document}


This is a model. While compiling it, the MSC is changed as 1991. Anyone please help me to resolve it.

• Welcome! If I compile after adding \maketitle before \end{document} I get 2020. You should update your TeX system. Sep 30 '20 at 15:58
• My TeX version is also under 2020 (2019) and I get 1991. It is logical that MSC 2020 has been designed after 2019. so it doesn't work on old versions. Or at least update amsart packages and documentclass.
– user108724
Sep 30 '20 at 16:49

\makeatletter
\@namedef{subjclassname@2020}{\textup{2020} Mathematics Subject Classification}
\makeatother


The class amsart.cls has been updated to version 2.20.6 released 2020/05/29, where basically the only change was to support the new Mathematics Subject Classification (MSC) issued in 2020.

Previously the code was

\newcommand*\subjclass[2][1991]{%
\def\@subjclass{#2}%
\@ifundefined{subjclassname@#1}{%
\ClassWarning{\@classname}{Unknown edition (#1) of Mathematics
Subject Classification; using '1991'.}%
}{%
\@xp\let\@xp\subjclassname\csname subjclassname@#1\endcsname
}%
}
\newcommand{\subjclassname}{%
\textup{1991} Mathematics Subject Classification}
\@xp\let\csname subjclassname@1991\endcsname \subjclassname
\@namedef{subjclassname@2000}{%
\textup{2000} Mathematics Subject Classification}
\@namedef{subjclassname@2010}{%
\textup{2010} Mathematics Subject Classification}


This means that only 1991, 2000 or 2010 were supported as optional arguments to \subjclass. The idea is to avoid “illegal” release dates of the MSC. The optional argument defaults to 1991, which is also the date used (after the warning message) if an unsupported date is used.

In the new release we have essentially the same, but with some small changes

\newcommand*\subjclass[2][2020]{%
\def\@subjclass{#2}%
\@ifundefined{subjclassname@#1}{%
\ClassWarning{\@classname}{Unknown edition (#1) of Mathematics
Subject Classification; using '2020'.}%
}{%
\@xp\let\@xp\subjclassname\csname subjclassname@#1\endcsname
}%
}
\@namedef{subjclassname@1991}{%
\textup{1991} Mathematics Subject Classification}
\@namedef{subjclassname@2000}{%
\textup{2000} Mathematics Subject Classification}
\@namedef{subjclassname@2010}{%
\textup{2010} Mathematics Subject Classification}
\@namedef{subjclassname@2020}{%
\textup{2020} Mathematics Subject Classification}
\@xp\let\@xp\subjclassname\csname subjclassname@2020\endcsname


Besides adding support for the 2020 edition of the MSC, this date has become the default, if no optional argument is used.

So you need to update your TeX system to TeX Live 2020 or use the workaround suggested by Tanvir.

With an up-to-date system, \subjclass{...} will produce 2020.

There is another (with the same solution) way to do it. You have to find the file "amsart.cls". You can easily find it by using search in "C:\Program Files\MiKTeX 2.9" folder. If you use Scientific Word then search it in the folder "C:\Swp55". Next, open it with notepad and change all "1991" to "2020" save and close it. Go to your editör and build the code. It needs to be work.

• Welcome to TeX.SE! Never change a class file in this way, there is a varaiable available to set the proper year, see @egreg's answer .... Sep 16 at 6:48