EvoScientist 0.0.1.dev2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. EvoScientist/EvoScientist.py +157 -0
  2. EvoScientist/__init__.py +24 -0
  3. EvoScientist/__main__.py +4 -0
  4. EvoScientist/backends.py +392 -0
  5. EvoScientist/cli.py +1553 -0
  6. EvoScientist/middleware.py +35 -0
  7. EvoScientist/prompts.py +277 -0
  8. EvoScientist/skills/accelerate/SKILL.md +332 -0
  9. EvoScientist/skills/accelerate/references/custom-plugins.md +453 -0
  10. EvoScientist/skills/accelerate/references/megatron-integration.md +489 -0
  11. EvoScientist/skills/accelerate/references/performance.md +525 -0
  12. EvoScientist/skills/bitsandbytes/SKILL.md +411 -0
  13. EvoScientist/skills/bitsandbytes/references/memory-optimization.md +521 -0
  14. EvoScientist/skills/bitsandbytes/references/qlora-training.md +521 -0
  15. EvoScientist/skills/bitsandbytes/references/quantization-formats.md +447 -0
  16. EvoScientist/skills/find-skills/SKILL.md +133 -0
  17. EvoScientist/skills/find-skills/scripts/install_skill.py +211 -0
  18. EvoScientist/skills/flash-attention/SKILL.md +367 -0
  19. EvoScientist/skills/flash-attention/references/benchmarks.md +215 -0
  20. EvoScientist/skills/flash-attention/references/transformers-integration.md +293 -0
  21. EvoScientist/skills/llama-cpp/SKILL.md +258 -0
  22. EvoScientist/skills/llama-cpp/references/optimization.md +89 -0
  23. EvoScientist/skills/llama-cpp/references/quantization.md +213 -0
  24. EvoScientist/skills/llama-cpp/references/server.md +125 -0
  25. EvoScientist/skills/lm-evaluation-harness/SKILL.md +490 -0
  26. EvoScientist/skills/lm-evaluation-harness/references/api-evaluation.md +490 -0
  27. EvoScientist/skills/lm-evaluation-harness/references/benchmark-guide.md +488 -0
  28. EvoScientist/skills/lm-evaluation-harness/references/custom-tasks.md +602 -0
  29. EvoScientist/skills/lm-evaluation-harness/references/distributed-eval.md +519 -0
  30. EvoScientist/skills/ml-paper-writing/SKILL.md +937 -0
  31. EvoScientist/skills/ml-paper-writing/references/checklists.md +361 -0
  32. EvoScientist/skills/ml-paper-writing/references/citation-workflow.md +562 -0
  33. EvoScientist/skills/ml-paper-writing/references/reviewer-guidelines.md +367 -0
  34. EvoScientist/skills/ml-paper-writing/references/sources.md +159 -0
  35. EvoScientist/skills/ml-paper-writing/references/writing-guide.md +476 -0
  36. EvoScientist/skills/ml-paper-writing/templates/README.md +251 -0
  37. EvoScientist/skills/ml-paper-writing/templates/aaai2026/README.md +534 -0
  38. EvoScientist/skills/ml-paper-writing/templates/aaai2026/aaai2026-unified-supp.tex +144 -0
  39. EvoScientist/skills/ml-paper-writing/templates/aaai2026/aaai2026-unified-template.tex +952 -0
  40. EvoScientist/skills/ml-paper-writing/templates/aaai2026/aaai2026.bib +111 -0
  41. EvoScientist/skills/ml-paper-writing/templates/aaai2026/aaai2026.bst +1493 -0
  42. EvoScientist/skills/ml-paper-writing/templates/aaai2026/aaai2026.sty +315 -0
  43. EvoScientist/skills/ml-paper-writing/templates/acl/README.md +50 -0
  44. EvoScientist/skills/ml-paper-writing/templates/acl/acl.sty +312 -0
  45. EvoScientist/skills/ml-paper-writing/templates/acl/acl_latex.tex +377 -0
  46. EvoScientist/skills/ml-paper-writing/templates/acl/acl_lualatex.tex +101 -0
  47. EvoScientist/skills/ml-paper-writing/templates/acl/acl_natbib.bst +1940 -0
  48. EvoScientist/skills/ml-paper-writing/templates/acl/anthology.bib.txt +26 -0
  49. EvoScientist/skills/ml-paper-writing/templates/acl/custom.bib +70 -0
  50. EvoScientist/skills/ml-paper-writing/templates/acl/formatting.md +326 -0
  51. EvoScientist/skills/ml-paper-writing/templates/colm2025/README.md +3 -0
  52. EvoScientist/skills/ml-paper-writing/templates/colm2025/colm2025_conference.bib +11 -0
  53. EvoScientist/skills/ml-paper-writing/templates/colm2025/colm2025_conference.bst +1440 -0
  54. EvoScientist/skills/ml-paper-writing/templates/colm2025/colm2025_conference.pdf +0 -0
  55. EvoScientist/skills/ml-paper-writing/templates/colm2025/colm2025_conference.sty +218 -0
  56. EvoScientist/skills/ml-paper-writing/templates/colm2025/colm2025_conference.tex +305 -0
  57. EvoScientist/skills/ml-paper-writing/templates/colm2025/fancyhdr.sty +485 -0
  58. EvoScientist/skills/ml-paper-writing/templates/colm2025/math_commands.tex +508 -0
  59. EvoScientist/skills/ml-paper-writing/templates/colm2025/natbib.sty +1246 -0
  60. EvoScientist/skills/ml-paper-writing/templates/iclr2026/fancyhdr.sty +485 -0
  61. EvoScientist/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.bib +24 -0
  62. EvoScientist/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.bst +1440 -0
  63. EvoScientist/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.pdf +0 -0
  64. EvoScientist/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.sty +246 -0
  65. EvoScientist/skills/ml-paper-writing/templates/iclr2026/iclr2026_conference.tex +414 -0
  66. EvoScientist/skills/ml-paper-writing/templates/iclr2026/math_commands.tex +508 -0
  67. EvoScientist/skills/ml-paper-writing/templates/iclr2026/natbib.sty +1246 -0
  68. EvoScientist/skills/ml-paper-writing/templates/icml2026/algorithm.sty +79 -0
  69. EvoScientist/skills/ml-paper-writing/templates/icml2026/algorithmic.sty +201 -0
  70. EvoScientist/skills/ml-paper-writing/templates/icml2026/example_paper.bib +75 -0
  71. EvoScientist/skills/ml-paper-writing/templates/icml2026/example_paper.pdf +0 -0
  72. EvoScientist/skills/ml-paper-writing/templates/icml2026/example_paper.tex +662 -0
  73. EvoScientist/skills/ml-paper-writing/templates/icml2026/fancyhdr.sty +864 -0
  74. EvoScientist/skills/ml-paper-writing/templates/icml2026/icml2026.bst +1443 -0
  75. EvoScientist/skills/ml-paper-writing/templates/icml2026/icml2026.sty +767 -0
  76. EvoScientist/skills/ml-paper-writing/templates/icml2026/icml_numpapers.pdf +0 -0
  77. EvoScientist/skills/ml-paper-writing/templates/neurips2025/Makefile +36 -0
  78. EvoScientist/skills/ml-paper-writing/templates/neurips2025/extra_pkgs.tex +53 -0
  79. EvoScientist/skills/ml-paper-writing/templates/neurips2025/main.tex +38 -0
  80. EvoScientist/skills/ml-paper-writing/templates/neurips2025/neurips.sty +382 -0
  81. EvoScientist/skills/peft/SKILL.md +431 -0
  82. EvoScientist/skills/peft/references/advanced-usage.md +514 -0
  83. EvoScientist/skills/peft/references/troubleshooting.md +480 -0
  84. EvoScientist/skills/ray-data/SKILL.md +326 -0
  85. EvoScientist/skills/ray-data/references/integration.md +82 -0
  86. EvoScientist/skills/ray-data/references/transformations.md +83 -0
  87. EvoScientist/skills/skill-creator/LICENSE.txt +202 -0
  88. EvoScientist/skills/skill-creator/SKILL.md +356 -0
  89. EvoScientist/skills/skill-creator/references/output-patterns.md +82 -0
  90. EvoScientist/skills/skill-creator/references/workflows.md +28 -0
  91. EvoScientist/skills/skill-creator/scripts/init_skill.py +303 -0
  92. EvoScientist/skills/skill-creator/scripts/package_skill.py +110 -0
  93. EvoScientist/skills/skill-creator/scripts/quick_validate.py +95 -0
  94. EvoScientist/stream/__init__.py +53 -0
  95. EvoScientist/stream/emitter.py +94 -0
  96. EvoScientist/stream/formatter.py +168 -0
  97. EvoScientist/stream/tracker.py +115 -0
  98. EvoScientist/stream/utils.py +255 -0
  99. EvoScientist/subagent.yaml +147 -0
  100. EvoScientist/tools.py +135 -0
  101. EvoScientist/utils.py +207 -0
  102. evoscientist-0.0.1.dev2.dist-info/METADATA +227 -0
  103. evoscientist-0.0.1.dev2.dist-info/RECORD +107 -0
  104. evoscientist-0.0.1.dev2.dist-info/WHEEL +5 -0
  105. evoscientist-0.0.1.dev2.dist-info/entry_points.txt +5 -0
  106. evoscientist-0.0.1.dev2.dist-info/licenses/LICENSE +21 -0
  107. evoscientist-0.0.1.dev2.dist-info/top_level.txt +1 -0
@@ -0,0 +1,36 @@
1
+ FIGURES_FOLDER := figures
2
+ PDFS := \
3
+ $(filter-out $(wildcard $(FIGURES_FOLDER)/*-crop.pdf),$(wildcard $(FIGURES_FOLDER)/*.pdf)) \
4
+ $(filter-out $(wildcard $(FIGURES_FOLDER)/**/*-crop.pdf),$(wildcard $(FIGURES_FOLDER)/**/*.pdf))
5
+ CROPPED_PDFS := $(PDFS:.pdf=-crop.pdf)
6
+
7
+ all: main.pdf
8
+
9
+ %.pdf: %.tex Makefile $(CROPPED_PDFS)
10
+ pdflatex -synctex=1 -interaction=nonstopmode $<
11
+ -bibtex $*.aux
12
+ pdflatex -synctex=1 -interaction=nonstopmode $<
13
+ pdflatex -synctex=1 -interaction=nonstopmode $<
14
+
15
+ .PHONY: figures
16
+ figures: $(CROPPED_PDFS)
17
+
18
+ .PRECIOUS: $(CROPPED_PDFS)
19
+ %-crop.pdf: %.pdf Makefile
20
+ pdfcrop $<
21
+
22
+ .PHONY: clean upgrade
23
+ clean:
24
+ find . -maxdepth 1 \
25
+ \( -name "*.aux" -o -name "*.bbl" -o -name "*.blg" -o \
26
+ -name "*.log" -o -name "*.out" -o -name "*.pdf" -o \
27
+ -name "*.synctex.gz" \) | xargs $(RM)
28
+ find $(FIGURES_FOLDER) -name "*-crop.pdf" | xargs $(RM)
29
+
30
+ YEAR := 2025
31
+
32
+ upgrade:
33
+ curl -O https://media.neurips.cc/Conferences/NeurIPS$(YEAR)/Styles.zip
34
+ unzip -u Styles.zip
35
+ mv Styles/neurips_${YEAR}.sty neurips.sty
36
+ $(RM) -r Styles.zip Styles
@@ -0,0 +1,53 @@
1
+ \usepackage[export]{adjustbox}
2
+ \usepackage[ruled]{algorithm2e}
3
+ \usepackage[inline, shortlabels]{enumitem}
4
+ \usepackage[T1]{fontenc}
5
+ \usepackage{hyperref}
6
+ \usepackage{microtype}
7
+ \usepackage{pifont}
8
+ \usepackage{xcolor}
9
+ \usepackage{xurl}
10
+ % Figures and Tables
11
+ \usepackage{graphicx}
12
+ \usepackage{booktabs}
13
+ \usepackage{tabularray}
14
+ % Monospaced Code Blocks
15
+ \usepackage{listings}
16
+ % Math Packages
17
+ \usepackage{amsmath, amsfonts}
18
+ \usepackage{nicefrac}
19
+
20
+ \UseTblrLibrary{booktabs}
21
+
22
+ \lstset{
23
+ backgroundcolor=\color{white}, % choose the background color; you must add \usepackage{color} or \usepackage{xcolor}; should come as last argument
24
+ basicstyle=\ttfamily, % the size of the fonts that are used for the code
25
+ breakatwhitespace=false, % sets if automatic breaks should only happen at whitespace
26
+ breaklines=true, % sets automatic line breaking
27
+ captionpos=b, % sets the caption-position to bottom
28
+ columns=fullflexible, % reduce the column spacing
29
+ commentstyle=\color{gray}, % comment style
30
+ deletekeywords={}, % if you want to delete keywords from the given language
31
+ escapeinside={\%*}{*)}, % if you want to add LaTeX within your code
32
+ extendedchars=true, % lets you use non-ASCII characters; for 8-bits encodings only, does not work with UTF-8
33
+ frame=none, % adds no frame around the code
34
+ keepspaces=true, % keeps spaces in text, useful for keeping indentation of code (possibly needs columns=flexible)
35
+ keywordstyle=\color{blue}, % keyword style
36
+ language=C++, % the language of the code
37
+ morekeywords={}, % if you want to add more keywords to the set
38
+ numbers=none, % where to put the line-numbers; possible values are (none, left, right)
39
+ numbersep=5pt, % how far the line-numbers are from the code
40
+ numberstyle=\color{black}, % the style that is used for the line-numbers
41
+ rulecolor=\color{black}, % if not set, the frame-color may be changed on line-breaks within not-black text (e.g. comments (green here))
42
+ showspaces=false, % show spaces everywhere adding particular underscores; it overrides 'showstringspaces'
43
+ showstringspaces=false, % underline spaces within strings only
44
+ showtabs=false, % show tabs within strings adding particular underscores
45
+ stepnumber=1, % the step between two line-numbers. If it's 1, each line will be numbered
46
+ stringstyle=\color{red}, % string literal style
47
+ tabsize=4, % sets default tabsize to 4 spaces
48
+ }
49
+
50
+ \makeatletter
51
+ \newcommand{\ssymbol}[1]{\@fnsymbol{#1}}
52
+ \newcommand{\romanNumeral}[1]{\expandafter\@slowromancap\romannumeral #1@}
53
+ \makeatother
@@ -0,0 +1,38 @@
1
+ \documentclass{article}
2
+
3
+ \usepackage[nonatbib, final]{neurips}
4
+ \usepackage[numbers]{natbib}
5
+
6
+ \makeatletter
7
+ \renewcommand{\@noticestring}{
8
+ \centering
9
+
10
+ }
11
+ \makeatother
12
+
13
+ \input{extra_pkgs}
14
+
15
+ \usepackage{physics}
16
+ \usepackage{mathtools}
17
+ \DeclarePairedDelimiter\p{(}{)}
18
+ \DeclarePairedDelimiter\n{|}{|}
19
+ \DeclarePairedDelimiter\B{[}{]}
20
+
21
+ \title{}
22
+
23
+ \author{
24
+ Bojian Zheng \\
25
+ University of Toronto \\
26
+ \href{mailto:bojian@cs.toronto.edu}{bojian@cs.toronto.edu}
27
+ }
28
+
29
+ \begin{document}
30
+
31
+ \maketitle
32
+
33
+
34
+
35
+ % \bibliographystyle{plainnat}
36
+ % \bibliography{bibliography}
37
+
38
+ \end{document}
@@ -0,0 +1,382 @@
1
+ % partial rewrite of the LaTeX2e package for submissions to the
2
+ % Conference on Neural Information Processing Systems (NeurIPS):
3
+ %
4
+ % - uses more LaTeX conventions
5
+ % - line numbers at submission time replaced with aligned numbers from
6
+ % lineno package
7
+ % - \nipsfinalcopy replaced with [final] package option
8
+ % - automatically loads times package for authors
9
+ % - loads natbib automatically; this can be suppressed with the
10
+ % [nonatbib] package option
11
+ % - adds foot line to first page identifying the conference
12
+ % - adds preprint option for submission to e.g. arXiv
13
+ % - conference acronym modified
14
+ %
15
+ % Roman Garnett (garnett@wustl.edu) and the many authors of
16
+ % nips15submit_e.sty, including MK and drstrip@sandia
17
+ %
18
+ % last revision: April 2025
19
+
20
+ \NeedsTeXFormat{LaTeX2e}
21
+ \ProvidesPackage{neurips_2025}[2025/04/02 NeurIPS 2025 submission/camera-ready style file]
22
+
23
+ % declare final option, which creates camera-ready copy
24
+ \newif\if@neuripsfinal\@neuripsfinalfalse
25
+ \DeclareOption{final}{
26
+ \@neuripsfinaltrue
27
+ }
28
+
29
+ % declare nonatbib option, which does not load natbib in case of
30
+ % package clash (users can pass options to natbib via
31
+ % \PassOptionsToPackage)
32
+ \newif\if@natbib\@natbibtrue
33
+ \DeclareOption{nonatbib}{
34
+ \@natbibfalse
35
+ }
36
+
37
+ % declare preprint option, which creates a preprint version ready for
38
+ % upload to, e.g., arXiv
39
+ \newif\if@preprint\@preprintfalse
40
+ \DeclareOption{preprint}{
41
+ \@preprinttrue
42
+ }
43
+
44
+ \ProcessOptions\relax
45
+
46
+ % determine whether this is an anonymized submission
47
+ \newif\if@submission\@submissiontrue
48
+ \if@neuripsfinal\@submissionfalse\fi
49
+ \if@preprint\@submissionfalse\fi
50
+
51
+ % fonts
52
+ \renewcommand{\rmdefault}{ptm}
53
+ \renewcommand{\sfdefault}{phv}
54
+
55
+ % change this every year for notice string at bottom
56
+ \newcommand{\@neuripsordinal}{39th}
57
+ \newcommand{\@neuripsyear}{2025}
58
+ \newcommand{\@neuripslocation}{San Diego}
59
+
60
+ % acknowledgments
61
+ \usepackage{environ}
62
+ \newcommand{\acksection}{\section*{Acknowledgments and Disclosure of Funding}}
63
+ \NewEnviron{ack}{%
64
+ \acksection
65
+ \BODY
66
+ }
67
+
68
+
69
+ % load natbib unless told otherwise
70
+ \if@natbib
71
+ \RequirePackage{natbib}
72
+ \fi
73
+
74
+ % set page geometry
75
+ \usepackage[verbose=true,letterpaper]{geometry}
76
+ \AtBeginDocument{
77
+ \newgeometry{
78
+ textheight=9in,
79
+ textwidth=5.5in,
80
+ top=1in,
81
+ headheight=12pt,
82
+ headsep=25pt,
83
+ footskip=30pt
84
+ }
85
+ \@ifpackageloaded{fullpage}
86
+ {\PackageWarning{neurips_2025}{fullpage package not allowed! Overwriting formatting.}}
87
+ {}
88
+ }
89
+
90
+ \widowpenalty=10000
91
+ \clubpenalty=10000
92
+ \flushbottom
93
+ \sloppy
94
+
95
+
96
+ % font sizes with reduced leading
97
+ \renewcommand{\normalsize}{%
98
+ \@setfontsize\normalsize\@xpt\@xipt
99
+ \abovedisplayskip 7\p@ \@plus 2\p@ \@minus 5\p@
100
+ \abovedisplayshortskip \z@ \@plus 3\p@
101
+ \belowdisplayskip \abovedisplayskip
102
+ \belowdisplayshortskip 4\p@ \@plus 3\p@ \@minus 3\p@
103
+ }
104
+ \normalsize
105
+ \renewcommand{\small}{%
106
+ \@setfontsize\small\@ixpt\@xpt
107
+ \abovedisplayskip 6\p@ \@plus 1.5\p@ \@minus 4\p@
108
+ \abovedisplayshortskip \z@ \@plus 2\p@
109
+ \belowdisplayskip \abovedisplayskip
110
+ \belowdisplayshortskip 3\p@ \@plus 2\p@ \@minus 2\p@
111
+ }
112
+ \renewcommand{\footnotesize}{\@setfontsize\footnotesize\@ixpt\@xpt}
113
+ \renewcommand{\scriptsize}{\@setfontsize\scriptsize\@viipt\@viiipt}
114
+ \renewcommand{\tiny}{\@setfontsize\tiny\@vipt\@viipt}
115
+ \renewcommand{\large}{\@setfontsize\large\@xiipt{14}}
116
+ \renewcommand{\Large}{\@setfontsize\Large\@xivpt{16}}
117
+ \renewcommand{\LARGE}{\@setfontsize\LARGE\@xviipt{20}}
118
+ \renewcommand{\huge}{\@setfontsize\huge\@xxpt{23}}
119
+ \renewcommand{\Huge}{\@setfontsize\Huge\@xxvpt{28}}
120
+
121
+ % sections with less space
122
+ \providecommand{\section}{}
123
+ \renewcommand{\section}{%
124
+ \@startsection{section}{1}{\z@}%
125
+ {-2.0ex \@plus -0.5ex \@minus -0.2ex}%
126
+ { 1.5ex \@plus 0.3ex \@minus 0.2ex}%
127
+ {\large\bf\raggedright}%
128
+ }
129
+ \providecommand{\subsection}{}
130
+ \renewcommand{\subsection}{%
131
+ \@startsection{subsection}{2}{\z@}%
132
+ {-1.8ex \@plus -0.5ex \@minus -0.2ex}%
133
+ { 0.8ex \@plus 0.2ex}%
134
+ {\normalsize\bf\raggedright}%
135
+ }
136
+ \providecommand{\subsubsection}{}
137
+ \renewcommand{\subsubsection}{%
138
+ \@startsection{subsubsection}{3}{\z@}%
139
+ {-1.5ex \@plus -0.5ex \@minus -0.2ex}%
140
+ { 0.5ex \@plus 0.2ex}%
141
+ {\normalsize\bf\raggedright}%
142
+ }
143
+ \providecommand{\paragraph}{}
144
+ \renewcommand{\paragraph}{%
145
+ \@startsection{paragraph}{4}{\z@}%
146
+ {1.5ex \@plus 0.5ex \@minus 0.2ex}%
147
+ {-1em}%
148
+ {\normalsize\bf}%
149
+ }
150
+ \providecommand{\subparagraph}{}
151
+ \renewcommand{\subparagraph}{%
152
+ \@startsection{subparagraph}{5}{\z@}%
153
+ {1.5ex \@plus 0.5ex \@minus 0.2ex}%
154
+ {-1em}%
155
+ {\normalsize\bf}%
156
+ }
157
+ \providecommand{\subsubsubsection}{}
158
+ \renewcommand{\subsubsubsection}{%
159
+ \vskip5pt{\noindent\normalsize\rm\raggedright}%
160
+ }
161
+
162
+ % float placement
163
+ \renewcommand{\topfraction }{0.85}
164
+ \renewcommand{\bottomfraction }{0.4}
165
+ \renewcommand{\textfraction }{0.1}
166
+ \renewcommand{\floatpagefraction}{0.7}
167
+
168
+ \newlength{\@neuripsabovecaptionskip}\setlength{\@neuripsabovecaptionskip}{7\p@}
169
+ \newlength{\@neuripsbelowcaptionskip}\setlength{\@neuripsbelowcaptionskip}{\z@}
170
+
171
+ \setlength{\abovecaptionskip}{\@neuripsabovecaptionskip}
172
+ \setlength{\belowcaptionskip}{\@neuripsbelowcaptionskip}
173
+
174
+ % swap above/belowcaptionskip lengths for tables
175
+ \renewenvironment{table}
176
+ {\setlength{\abovecaptionskip}{\@neuripsbelowcaptionskip}%
177
+ \setlength{\belowcaptionskip}{\@neuripsabovecaptionskip}%
178
+ \@float{table}}
179
+ {\end@float}
180
+
181
+ % footnote formatting
182
+ \setlength{\footnotesep }{6.65\p@}
183
+ \setlength{\skip\footins}{9\p@ \@plus 4\p@ \@minus 2\p@}
184
+ \renewcommand{\footnoterule}{\kern-3\p@ \hrule width 12pc \kern 2.6\p@}
185
+ \setcounter{footnote}{0}
186
+
187
+ % paragraph formatting
188
+ \setlength{\parindent}{\z@}
189
+ \setlength{\parskip }{5.5\p@}
190
+
191
+ % list formatting
192
+ \setlength{\topsep }{4\p@ \@plus 1\p@ \@minus 2\p@}
193
+ \setlength{\partopsep }{1\p@ \@plus 0.5\p@ \@minus 0.5\p@}
194
+ \setlength{\itemsep }{2\p@ \@plus 1\p@ \@minus 0.5\p@}
195
+ \setlength{\parsep }{2\p@ \@plus 1\p@ \@minus 0.5\p@}
196
+ \setlength{\leftmargin }{3pc}
197
+ \setlength{\leftmargini }{\leftmargin}
198
+ \setlength{\leftmarginii }{2em}
199
+ \setlength{\leftmarginiii}{1.5em}
200
+ \setlength{\leftmarginiv }{1.0em}
201
+ \setlength{\leftmarginv }{0.5em}
202
+ \def\@listi {\leftmargin\leftmargini}
203
+ \def\@listii {\leftmargin\leftmarginii
204
+ \labelwidth\leftmarginii
205
+ \advance\labelwidth-\labelsep
206
+ \topsep 2\p@ \@plus 1\p@ \@minus 0.5\p@
207
+ \parsep 1\p@ \@plus 0.5\p@ \@minus 0.5\p@
208
+ \itemsep \parsep}
209
+ \def\@listiii{\leftmargin\leftmarginiii
210
+ \labelwidth\leftmarginiii
211
+ \advance\labelwidth-\labelsep
212
+ \topsep 1\p@ \@plus 0.5\p@ \@minus 0.5\p@
213
+ \parsep \z@
214
+ \partopsep 0.5\p@ \@plus 0\p@ \@minus 0.5\p@
215
+ \itemsep \topsep}
216
+ \def\@listiv {\leftmargin\leftmarginiv
217
+ \labelwidth\leftmarginiv
218
+ \advance\labelwidth-\labelsep}
219
+ \def\@listv {\leftmargin\leftmarginv
220
+ \labelwidth\leftmarginv
221
+ \advance\labelwidth-\labelsep}
222
+ \def\@listvi {\leftmargin\leftmarginvi
223
+ \labelwidth\leftmarginvi
224
+ \advance\labelwidth-\labelsep}
225
+
226
+ % create title
227
+ \providecommand{\maketitle}{}
228
+ \renewcommand{\maketitle}{%
229
+ \par
230
+ \begingroup
231
+ \renewcommand{\thefootnote}{\fnsymbol{footnote}}
232
+ % for perfect author name centering
233
+ \renewcommand{\@makefnmark}{\hbox to \z@{$^{\@thefnmark}$\hss}}
234
+ % The footnote-mark was overlapping the footnote-text,
235
+ % added the following to fix this problem (MK)
236
+ \long\def\@makefntext##1{%
237
+ \parindent 1em\noindent
238
+ \hbox to 1.8em{\hss $\m@th ^{\@thefnmark}$}##1
239
+ }
240
+ \thispagestyle{empty}
241
+ \@maketitle
242
+ \@thanks
243
+ \@notice
244
+ \endgroup
245
+ \let\maketitle\relax
246
+ \let\thanks\relax
247
+ }
248
+
249
+ % rules for title box at top of first page
250
+ \newcommand{\@toptitlebar}{
251
+ \hrule height 4\p@
252
+ \vskip 0.25in
253
+ \vskip -\parskip%
254
+ }
255
+ \newcommand{\@bottomtitlebar}{
256
+ \vskip 0.29in
257
+ \vskip -\parskip
258
+ \hrule height 1\p@
259
+ \vskip 0.09in%
260
+ }
261
+
262
+ % create title (includes both anonymized and non-anonymized versions)
263
+ \providecommand{\@maketitle}{}
264
+ \renewcommand{\@maketitle}{%
265
+ \vbox{%
266
+ \hsize\textwidth
267
+ \linewidth\hsize
268
+ \vskip 0.1in
269
+ \@toptitlebar
270
+ \centering
271
+ {\LARGE\bf \@title\par}
272
+ \@bottomtitlebar
273
+ \if@submission
274
+ \begin{tabular}[t]{c}\bf\rule{\z@}{24\p@}
275
+ Anonymous Author(s) \\
276
+ Affiliation \\
277
+ Address \\
278
+ \texttt{email} \\
279
+ \end{tabular}%
280
+ \else
281
+ \def\And{%
282
+ \end{tabular}\hfil\linebreak[0]\hfil%
283
+ \begin{tabular}[t]{c}\bf\rule{\z@}{24\p@}\ignorespaces%
284
+ }
285
+ \def\AND{%
286
+ \end{tabular}\hfil\linebreak[4]\hfil%
287
+ \begin{tabular}[t]{c}\bf\rule{\z@}{24\p@}\ignorespaces%
288
+ }
289
+ \begin{tabular}[t]{c}\bf\rule{\z@}{24\p@}\@author\end{tabular}%
290
+ \fi
291
+ \vskip 0.3in \@minus 0.1in
292
+ }
293
+ }
294
+
295
+ % add conference notice to bottom of first page
296
+ \newcommand{\ftype@noticebox}{8}
297
+ \newcommand{\@notice}{%
298
+ % give a bit of extra room back to authors on first page
299
+ \enlargethispage{2\baselineskip}%
300
+ \@float{noticebox}[b]%
301
+ \footnotesize\@noticestring%
302
+ \end@float%
303
+ }
304
+
305
+ % abstract styling
306
+ \renewenvironment{abstract}%
307
+ {%
308
+ \vskip 0.075in%
309
+ \centerline%
310
+ {\large\bf Abstract}%
311
+ \vspace{0.5ex}%
312
+ \begin{quote}%
313
+ }
314
+ {
315
+ \par%
316
+ \end{quote}%
317
+ \vskip 1ex%
318
+ }
319
+
320
+ % For the paper checklist
321
+ \newcommand{\answerYes}[1][]{\textcolor{blue}{[Yes] #1}}
322
+ \newcommand{\answerNo}[1][]{\textcolor{orange}{[No] #1}}
323
+ \newcommand{\answerNA}[1][]{\textcolor{gray}{[NA] #1}}
324
+ \newcommand{\answerTODO}[1][]{\textcolor{red}{\bf [TODO]}}
325
+ \newcommand{\justificationTODO}[1][]{\textcolor{red}{\bf [TODO]}}
326
+
327
+ % handle tweaks for camera-ready copy vs. submission copy
328
+ \if@preprint
329
+ \newcommand{\@noticestring}{%
330
+ Preprint. Under review.%
331
+ }
332
+ \else
333
+ \if@neuripsfinal
334
+ \newcommand{\@noticestring}{%
335
+ \@neuripsordinal\/ Conference on Neural Information Processing Systems
336
+ (NeurIPS \@neuripsyear).%, \@neuripslocation.%
337
+ }
338
+ \else
339
+ \newcommand{\@noticestring}{%
340
+ Submitted to \@neuripsordinal\/ Conference on Neural Information
341
+ Processing Systems (NeurIPS \@neuripsyear). Do not distribute.%
342
+ }
343
+
344
+ % hide the acknowledgements
345
+ \NewEnviron{hide}{}
346
+ \let\ack\hide
347
+ \let\endack\endhide
348
+
349
+ % line numbers for submission
350
+ \RequirePackage{lineno}
351
+ \linenumbers
352
+
353
+ % fix incompatibilities between lineno and amsmath, if required, by
354
+ % transparently wrapping linenomath environments around amsmath
355
+ % environments
356
+ \AtBeginDocument{%
357
+ \@ifpackageloaded{amsmath}{%
358
+ \newcommand*\patchAmsMathEnvironmentForLineno[1]{%
359
+ \expandafter\let\csname old#1\expandafter\endcsname\csname #1\endcsname
360
+ \expandafter\let\csname oldend#1\expandafter\endcsname\csname end#1\endcsname
361
+ \renewenvironment{#1}%
362
+ {\linenomath\csname old#1\endcsname}%
363
+ {\csname oldend#1\endcsname\endlinenomath}%
364
+ }%
365
+ \newcommand*\patchBothAmsMathEnvironmentsForLineno[1]{%
366
+ \patchAmsMathEnvironmentForLineno{#1}%
367
+ \patchAmsMathEnvironmentForLineno{#1*}%
368
+ }%
369
+ \patchBothAmsMathEnvironmentsForLineno{equation}%
370
+ \patchBothAmsMathEnvironmentsForLineno{align}%
371
+ \patchBothAmsMathEnvironmentsForLineno{flalign}%
372
+ \patchBothAmsMathEnvironmentsForLineno{alignat}%
373
+ \patchBothAmsMathEnvironmentsForLineno{gather}%
374
+ \patchBothAmsMathEnvironmentsForLineno{multline}%
375
+ }
376
+ {}
377
+ }
378
+ \fi
379
+ \fi
380
+
381
+
382
+ \endinput