From 05d5ef49e6454b6595377eb80df049a0bbf9b52e Mon Sep 17 00:00:00 2001 From: Janis Hutz Date: Fri, 26 Sep 2025 18:16:43 +0200 Subject: [PATCH] [CS] Add more macros for TI --- docs/docs.pdf | Bin 323278 -> 323500 bytes docs/parts/reference.tex | 4 +++- main/cs.tex | 4 +++- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/docs/docs.pdf b/docs/docs.pdf index c600602445ac3cc2bd1a39bdde87834961d0129b..57b7e502d2f58dce7f941a6edeef08412e018008 100644 GIT binary patch delta 17146 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 delta 16929 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 diff --git a/docs/parts/reference.tex b/docs/parts/reference.tex index 32ad0d3..0eb2341 100644 --- a/docs/parts/reference.tex +++ b/docs/parts/reference.tex @@ -82,7 +82,9 @@ These commands have to be executed inside math environment, except \verb|\timeco \item \verb|\tcl| Time complexity in $\tcl{}$-notation (best case / lower bound) \item \verb|\t[R, C, N]| Simply prints a capital R, C or N in math mode as normal text. So e.g. use $\tR$ to print an R \item \verb|\wordbool| Prints $\wordbool$ - \item \verb|\wordx|\{\textit{string}\} Prints $\wordx{test}$ + \item \verb|\words|\{\textit{string}\} Prints $\words{test}$ + \item \verb|\wordm|\{\textit{math}\} Prints $\wordm{1}$ + \item \verb|\alphabetx|\{\textit{string}\} Prints $\alphabetx{test}$ \end{itemize} \fhlc{Aquamarine}{Algorithms} diff --git a/main/cs.tex b/main/cs.tex index cdb3de1..1d074fb 100644 --- a/main/cs.tex +++ b/main/cs.tex @@ -18,7 +18,9 @@ \newcommand{\tco}[1]{\mathcal{O}\left(#1\right)} \newcommand{\tcl}[1]{\Omega\left(#1\right)} \newcommand{\wordbool}{(\Sigma_{\text{bool}})^*} -\newcommand{\wordx}[1]{(\Sigma_{\text{#1}})^*} +\newcommand{\words}[1]{(\Sigma_{\text{#1}})^*} +\newcommand{\wordm}[1]{(\Sigma_{\text{#1}})^*} +\newcommand{\alphabetx}[1]{\Sigma_{\text{#1}}} \newcommand{\tR}{\text{R}} \newcommand{\tC}{\text{C}} \newcommand{\tN}{\text{N}}