summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/latex/rec-thy
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2017-09-26 23:20:49 +0000
committerKarl Berry <karl@freefriends.org>2017-09-26 23:20:49 +0000
commitc692bae643e821e53503849d0185085066450bb1 (patch)
treecb24b69b52d038c581d3539e660d7eb81b9cdd2a /Master/texmf-dist/tex/latex/rec-thy
parentb482e67a123af24b726b884c6f5ba992e3a37b0b (diff)
rec-thy (26sep17)
git-svn-id: svn://tug.org/texlive/trunk@45407 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/rec-thy')
-rw-r--r--Master/texmf-dist/tex/latex/rec-thy/rec-thy.sty390
1 files changed, 294 insertions, 96 deletions
diff --git a/Master/texmf-dist/tex/latex/rec-thy/rec-thy.sty b/Master/texmf-dist/tex/latex/rec-thy/rec-thy.sty
index 30c42cab80d..91479ca7d8e 100644
--- a/Master/texmf-dist/tex/latex/rec-thy/rec-thy.sty
+++ b/Master/texmf-dist/tex/latex/rec-thy/rec-thy.sty
@@ -1,29 +1,54 @@
\NeedsTeXFormat{LaTeX2e}
-\newcommand*{\@curpack}{\@currname} %rec-thy.sty
-\newcommand*{\@packinfo}[1]{\PackageInfo{\@curpack}{#1}}
+\ProvidesPackage{rec-thy}[2017/09/26 v2.0 Provides commands for writing up recursion theory papers]
+\makeatletter
+% \newcommand*{\@curpack}{\@currname} %rec-thy.sty
+\newcommand*{\@packinfo}[1]{\PackageInfo{rec-thy}{#1}}
\newcommand*{\recthy@strip}[1]{%\expandafter\newcommand{\csname #1\endcsname}{}% Makes sure arg isn't already a command
\expandafter\edef\csname #1\endcsname{\expandafter\noexpand\csname @recthy@#1\endcsname}} %leaves us a command \arg defined to do \@recthy@arg
-\ProvidesPackage{\@curpack} [2011/01/01 v1.2 Provides commands for writing up recursion theory papers] %file name is package name
+% \ProvidesPackage{\@curpack} %file name is package name
% Release Notes
% Version 1.2
% Added mrref option
% Fixed horrific option processing bug
-
+\RequirePackage{amsmath}
+\RequirePackage{ifxetex,ifpdf}
\RequirePackage{suffix}
\RequirePackage{ifmtarg}
\RequirePackage{xifthen}
\RequirePackage{xkeyval}
-\RequirePackage{undertilde}
-\RequirePackage{stmaryrd}
-\RequirePackage{amsmath}
+\RequirePackage{mathtools}
\RequirePackage{amssymb}
-\RequirePackage{marvosym}
-\DeclareMathAlphabet{\mathbrush}{T1}{pbsi}{xl}{n}
-
-\newcommand*{\PMG@arginit}{\let\@PMG@parenarg\@PMG@undefined\let\@PMG@braketarg\@PMG@undefined}
-
-\newcommand*{\@recthy@family}{\@currname.\@currext} %The default family for this package...filename.ext
+\RequirePackage{amsfonts}
+\RequirePackage{undertilde}
+\RequirePackage{ltxcmds}
+\ltx@ifpackageloaded{unicode-math}{}{\RequirePackage{mathrsfs}}
+
+
+% \DeclareMathAlphabet{\mathbrush}{T1}{pbsi}{xl}{n}
+% \newcommand*{\mathbrush}[1]{\mathsfit{#1}}
+% \ifxetex
+% \RequirePackage{xltxtra}
+% \RequirePackage{unicode-math}
+% % \RequirePackage{fontspec,xunicode}
+% % \defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase} % To support LaTeX quoting style
+% % \input{/Users/TruePath/Library/texmf/tex/headers/appearence.tex}
+% \else
+% % \usepackage[utf8]{inputenc}
+% % \usepackage[T1]{fontenc}
+% % \RequirePackage{euscript}
+% % \newcommand*{\matheu}{\EuScript}
+
+% \ifpdf
+% \RequirePackage{cmap} % you can search in the pdf for umlauts and ligatures
+% \fi
+% \fi
+% \RequirePackage{stmaryrd}
+% \RequirePackage{marvosym}
+
+\def\PMG@arginit{\let\@PMG@parenarg\@PMG@undefined\let\@PMG@braketarg\@PMG@undefined}
+
+\def\@recthy@family{\@currname.\@currext} %The default family for this package...filename.ext
%Define boolean options true if option passed false otherwise
@@ -31,9 +56,11 @@
\newif\ifrecthy@mrref \recthy@mrreffalse
\newif\ifrecthy@nomath \recthy@nomathfalse
\newif\ifrecthy@nodelim \recthy@nodelimfalse
-\newif\ifrecthy@nonames \recthy@nonamesfalse
-\newif\ifrecthy@nosets \recthy@nosetsfalse
-\newif\ifrecthy@noquants \recthy@noquantsfalse
+\newif\ifrecthy@nonames
+\recthy@nonamesfalse
+\newif\ifrecthy@nosets
+\recthy@nosetsfalse
+\newif\ifrecthy@noquants\recthy@noquantsfalse
\newif\ifrecthy@nospaces \recthy@nospacesfalse
\newif\ifrecthy@nostrings \recthy@nostringsfalse
\newif\ifrecthy@notrees \recthy@notreesfalse
@@ -46,28 +73,141 @@
\newif\ifrecthy@noforcing \recthy@noforcingfalse
\newif\ifrecthy@nodegrees \recthy@nodegreesfalse
\newif\ifrecthy@nocomputations \recthy@nocomputationsfalse
-
-\DeclareOption{nohyphenation}{\recthy@nohyphenationtrue}
-\DeclareOption{mrref}{\recthy@mrreftrue}
-\DeclareOption{nomath}{\recthy@nomathtrue}
-\DeclareOption{nodelim}{\recthy@nodelimtrue}
-\DeclareOption{nonames}{\recthy@nonamestrue}
-\DeclareOption{nosets}{\recthy@nosetstrue}
-\DeclareOption{noquants}{\recthy@noquantstrue}
-\DeclareOption{nospaces}{\recthy@nospacestrue}
-\DeclareOption{nostrings}{\recthy@nostringstrue}
-\DeclareOption{notrees}{\recthy@notreestrue}
-\DeclareOption{nopair}{\recthy@nopairtrue}
-\DeclareOption{nosetrels}{\recthy@nosetrelstrue}
-\DeclareOption{noordinalnotations}{\recthy@noordinalnotationstrue}
-\DeclareOption{nosyntax}{\recthy@nosyntaxtrue}
-\DeclareOption{nodegclasses}{\recthy@nodegclassestrue}
-\DeclareOption{noforcing}{\recthy@noforcingtrue}
-\DeclareOption{nodegrees}{\recthy@nodegreestrue}
-\DeclareOption{nocomputations}{\recthy@nocomputationstrue}
-
-\DeclareOption{degjoin}{\def\Tjoin{\Tdegjoin}}
-
+\newif\ifrecthy@nostructresets \recthy@nostructresetsfalse
+\newif\ifrecthy@noreqhelper \recthy@noreqhelperfalse
+\newif\ifrecthy@nosubfun \recthy@nosubfunfalse
+\newif\ifrecthy@hyperreqs \recthy@hyperreqstrue
+
+\DeclareOptionX{nohyphenation}{\recthy@nohyphenationtrue}
+\DeclareOptionX{mrref}{\recthy@mrreftrue}
+\DeclareOptionX{nomath}{\recthy@nomathtrue}
+\DeclareOptionX{nodelim}{\recthy@nodelimtrue}
+\DeclareOptionX{nonames}{\recthy@nonamestrue}
+\DeclareOptionX{nosets}{\recthy@nosetstrue}
+\DeclareOptionX{noquants}{\recthy@noquantstrue}
+\DeclareOptionX{nospaces}{\recthy@nospacestrue}
+\DeclareOptionX{nostrings}{\recthy@nostringstrue}
+\DeclareOptionX{notrees}{\recthy@notreestrue}
+\DeclareOptionX{nopair}{\recthy@nopairtrue}
+\DeclareOptionX{nosetrels}{\recthy@nosetrelstrue}
+\DeclareOptionX{noordinalnotations}{\recthy@noordinalnotationstrue}
+\DeclareOptionX{nosyntax}{\recthy@nosyntaxtrue}
+\DeclareOptionX{nodegclasses}{\recthy@nodegclassestrue}
+\DeclareOptionX{noforcing}{\recthy@noforcingtrue}
+\DeclareOptionX{nodegrees}{\recthy@nodegreestrue}
+\DeclareOptionX{nocomputations}{\recthy@nocomputationstrue}
+\DeclareOptionX{nostructresets}{\recthy@nostructresetstrue}
+\DeclareOptionX{noreqhelper}{\recthy@noreqhelpertrue}
+\DeclareOptionX{nosubfun}{\recthy@nosubfuntrue}
+\DeclareOptionX{nohyperreqs}{\recthy@hyperreqsfalse}
+
+\DeclareOptionX{degjoin}{\def\Tjoin{\Tdegjoin}}
+
+\AtEndOfPackage{
+\ifrecthy@nosubfun
+ \@packinfo{Not loading subfun defs.}
+\else
+ \@packinfo{Loading subfun defs DOCUMENT ME.}
+ %DOCUMENT ME
+ \newcommand*{\subfun}[1][]{\prec\ifthenelse{\isempty{#1}}{_{#1}}{}}
+ \newcommand*{\supfun}[1][]{\succ\ifthenelse{\isempty{#1}}{_{#1}}{}}
+ \newcommand*{\nsubfun}[1][]{\nprec\ifthenelse{\isempty{#1}}{_{#1}}{}}
+ \newcommand*{\nsupfun}[1][]{\nsucc\ifthenelse{\isempty{#1}}{_{#1}}{}}
+ \newcommand*{\subfuneq}[1][]{\preceq\ifthenelse{\isempty{#1}}{_{#1}}{}}
+ \newcommand*{\supfuneq}[1][]{\succeq\ifthenelse{\isempty{#1}}{_{#1}}{}}
+ \newcommand*{\nsubfuneq}[1][]{\npreceq\ifthenelse{\isempty{#1}}{_{#1}}{}}
+ \newcommand*{\nsupfuneq}[1][]{\nsucceq\ifthenelse{\isempty{#1}}{_{#1}}{}}
+\fi
+}
+
+
+
+\newcommand*{\@recthy@reqscr}[1]{\mathscr{#1}}
+% \DeclareOptionX{reqscr}{\newcommand{\@recthy@reqscr}[1]{#1{##1}}}
+
+
+\AtEndOfPackage{
+\ifrecthy@noreqhelper
+ \@packinfo{Not loading requirement assist.}
+\else
+ \@packinfo{Loading requirement assist.}
+ \newcommand*{\req@orig}[3][]{\ensuremath{\ifthenelse{\isempty{#1}}{\@recthy@reqscr{#2}_{#3}}{\@recthy@reqscr{#2}^{#1}_{#3}}}}
+ \ifrecthy@hyperreqs
+ \newcommand*{\req}[3][]{
+ \@ifundefined{hyperref}{
+ \req@orig[#1]{#2}{#3}
+ }{
+ \hyperref[\detokenize{req:#2@#1}]{\req@orig[#1]{#2}{#3}}
+ }}
+ \else
+ \let\req=\req@orig
+ \fi
+ \WithSuffix\def\req*{\req@orig}
+ % \newsavebox{\@recthy@reqbox}
+ % \def\defreq#1#2\par{
+ % \begin{equation}\let\veqno\@@leqno%
+ % \tag*{#1}%
+ % \begin{lrbox}{\@recthy@reqbox}%
+ % \begin{minipage}{\textwidth}#2\end{minipage}%
+ % \end{lrbox}%
+ % \makebox[0pt]{\usebox{\@recthy@reqbox}}%
+ % \end{equation}}
+ \newtagform{colon}{}{:}
+ \newenvironment{requirement}[1]{
+ \let\@origif@fleqn@pmg=\if@fleqn
+ \let\@origiftagsleft@pmg=\iftagsleft@
+ \@fleqntrue
+ \setlength\@mathmargin{1.5cm}
+ \tagsleft@true
+ \usetagform{colon}
+ % \let\maketag@@@orig@pmg=\maketag@@@
+ % \def\maketag@@@#1{\hbox{\m@th\normalfont#1:}}
+ \begin{equation}\tag{#1}
+ }{
+ \end{equation}
+ \let\if@fleqn=\@origif@fleqn@pmg
+ \let\iftagsleft@=\@origiftagsleft@pmg
+ \usetagform{default}
+ % \let\maketag@@@=\maketag@@@orig@pmg
+ }
+
+ \newenvironment{require}[3][]{
+ \begin{requirement}{\req[#1]{#2}{#3}} \label{\detokenize{req:#2@#1}}
+ }{
+ \end{requirement}
+ }
+ \newcommand*{\refreq}[2][]{\ref{\detokenize{req:#2@#1}}}
+
+\fi
+}
+
+
+
+\AtEndOfPackage{
+\ifrecthy@nostructresets
+ \@packinfo{Not loading r.e. set structs w/ containment.}
+\else
+ \@packinfo{Loading r.e. set structs w/ containment.}
+\newcommand*{\promptdif}{\setminus_{\downarrow}}
+\let\setbefore=\promptdif
+\let\promptminus=\promptdif
+\let\promptsetminus=\promptdif
+
+\newcommand*{\StrcE}{\ensuremath{\mathscr{E}}}
+\WithSuffix\def\StrcE*{\ensuremath{\mathscr{E}^{*}}}
+\let\strucE\StrcE
+\newcommand*{\StrcL}[1]{\mathscr{L}(#1)}
+\newcommand*{\StrcStarL}[1]{\mathscr{L}^{*}(#1)}
+\WithSuffix\def\StrcL*{\StrcStarL}
+\newcommand*{\splitof}{\sqsubset}
+\newcommand*{\splitby}{\sqsupset}
+\newcommand*{\StrcR}{\ensuremath{\mathcal{R}}}
+\newcommand*{\StrcD}{\ensuremath{\mathcal{D}}}
+
+
+\fi
+}
+
\AtEndOfPackage{
\ifrecthy@nohyphenation
\@packinfo{No hyphenation loading.}
@@ -202,41 +342,43 @@
\fi
}
-\DeclareOption{reterms}{%
+\DeclareOptionX{reterms}{%
\let\@recthy@ce=\@recthy@re
\let\@recthy@computable=\@recthy@recursive
\let\@recthy@computablyEnumerable=\@recthy@recursivelyEnumerable
\let\@recthy@ComputablyEnumerable=\@recthy@RecursivelyEnumerable
} %Make all references to ce change to re
-
- \DeclareOption{reaterms}{%
+
+ \DeclareOptionX{reaterms}{%
\let\@recthy@CEA=\@recthy@REA
}
-
-\DeclareOption{ceterms}{%
+
+\DeclareOptionX{ceterms}{%
\let\@recthy@re=\@recthy@ce
\let\@recthy@recursive=\@recthy@computable
\let\@recthy@recursivelyEnumerable=\@recthy@computablyEnumerable
\let\@recthy@RecursivelyEnumerable=\@recthy@ComputablyEnumerable
} %Make all references to re change to ce
-\DeclareOption{ceaterms}{%
+\DeclareOptionX{ceaterms}{%
\let\@recthy@REA=\@recthy@CEA
}
% Set stuff
-\newcommand*{\@recthy@set}[2]{\ifthenelse{\isempty{#2}}{\left \{ #1 \right \}}{\left \{ #1 \middle | #2\right \}} }
+\def\@recthy@set#1{\def\@set@argi@pmg{#1}\@ifnextchar\bgroup\@setst@pmg\@setplain@pmg}
+\newcommand*{\@setst@pmg}[1]{\ifthenelse{\isempty{#1}}{\@setplain@pmg}{\left \{ \@set@argi@pmg \middle | #1\right \}}}
+\newcommand*{\@setplain@pmg}{\left \{ \@set@argi@pmg \right \}}
+% \newcommand*{\@recthy@set}[2]{\ifthenelse{\isempty{#2}}{\left \{ #1 \right \}}{\left \{ #1 \middle | #2\right \}} }
\newcommand*{\@recthy@card}[1]{\lvert#1\rvert}
\newcommand*{\@recthy@union}{\mathbin{\cup}}
\newcommand*{\@recthy@Union}{\mathop{\bigcup}}
\newcommand*{\@recthy@isect}{\mathbin{\cap}}
\newcommand*{\@recthy@Isect}{\mathop{\bigcap}}
-
+\newcommand*{\@recthy@nin}{\notin}
\newcommand*{\@recthy@powset}[1]{\mathcal{P}\left(#1\right)}
\newcommand*{\@recthy@eset}{\emptyset}
-\newcommand*{\@recthy@nin}{\mathrel{\not\in}}
\newcommand*{\@recthy@setcmpminusSYM}{\backsim}
\newcommand*{\@recthy@setminuscmp}[1]{\mathop{\@recthy@setcmpminusSYM} #1}
\newcommand*{\@recthy@setovercmp}[1]{\overline{#1}}
@@ -244,9 +386,9 @@
\def\@recthy@setminusSYM{-}
-\DeclareOption{setminussym}{\def\@recthy@setminusSYM{#1}}
-\DeclareOption{setcmpminussym}{\def\@recthy@setminusSYM{#1}}
-\DeclareOption{minussetcmp}{\let\@recthy@setcmp=\@recthy@setminuscmp}
+\DeclareOptionX{setminussym}{\def\@recthy@setminusSYM{#1}}
+\DeclareOptionX{setcmpminussym}{\def\@recthy@setminusSYM{#1}}
+\DeclareOptionX{minussetcmp}{\let\@recthy@setcmp=\@recthy@setminuscmp}
\newcommand*{\@recthy@setminus}{\mathbin{\@recthy@setminusSYM}}
@@ -285,26 +427,39 @@
\@packinfo{No quants loading.}
\else
\@packinfo{Quants loading.}
- \WithSuffix\def\exists(#1){\left(\exists\, #1 \right)\!}
- \WithSuffix\def\forall(#1){\left(\forall\, #1 \right)\!}
- \WithSuffix\def\nexists(#1){\left(\nexists\, #1 \right)\!}
- \WithSuffix\def\exists[#1]{\left[\exists\, #1 \right]\!}
- \WithSuffix\def\forall[#1]{\left[\forall\, #1 \right]\!}
- \WithSuffix\def\nexists[#1]{\left[\nexists\, #1 \right]\!}
- \WithSuffix\def\forall*{\forallae}
- \WithSuffix\def\exists*{\existsinf}
- \WithSuffix\def\nexists*{\nexistsinf}
-
+ \newcommand*{\existsuniq}{\exists !}
+ \newcommand*{\nexistsuniq}{\nexists !}
+ \WithSuffix\def\existsuniq(#1){\left(\existsuniq\, #1 \right)\!}
+ \WithSuffix\def\nexistsuniq(#1){\left(\nexistsuniq\, #1 \right)\!}
+ \WithSuffix\def\existsuniq[#1]{\left[\existsuniq\, #1 \right]\!}
+ \WithSuffix\def\nexistsuniq[#1]{\left[\nexistsuniq\, #1 \right]\!}
+
\newcommand*{\forallae}{\forall^{*}}
\WithSuffix\def\forallae(#1){\left(\forallae\, #1\right)\!}
\WithSuffix\def\forallae[#1]{\left[\forallae\, #1\right]\!}
+
\newcommand*{\existsinf}{\exists^{\infty}}
\WithSuffix\def\existsinf(#1){\left(\existsinf\, #1\right)\!}
\WithSuffix\def\existsinf[#1]{\left[\existsinf\, #1\right]\!}
+
\newcommand*{\nexistsinf}{\nexists^{\infty}}
\WithSuffix\def\nexistsinf(#1){\left(\nexistsinf\, #1\right)\!}
\WithSuffix\def\nexistsinf[#1]{\left[\nexistsinf\, #1\right]\!}
+ \WithSuffix\def\exists(#1){\left(\exists\, #1 \right)\!}
+ \WithSuffix\def\forall(#1){\left(\forall\, #1 \right)\!}
+ \WithSuffix\def\nexists(#1){\left(\nexists\, #1 \right)\!}
+ \WithSuffix\def\exists[#1]{\left[\exists\, #1 \right]\!}
+ \WithSuffix\def\forall[#1]{\left[\forall\, #1 \right]\!}
+ \WithSuffix\def\nexists[#1]{\left[\nexists\, #1 \right]\!}
+ \WithSuffix\def\forall*{\forallae}
+ \WithSuffix\def\exists*{\existsinf}
+ \WithSuffix\def\nexists*{\nexistsinf}
+ \WithSuffix\def\exists!{\existsuniq}
+
+
+
+
\newcommand*{\True}{\top}
\newcommand*{\False}{\bot}
@@ -344,10 +499,11 @@
%Strings
\newcommand*{\@recthy@EmptyStr}{\lambda}
-\newcommand*{\@recthy@concatSYM}{\hat{}}
-\DeclareOptionX<\@recthy@family>{emptystr}[]{\def\@recthy@EmptyStr{#1}}
-\DeclareOptionX<\@recthy@family>{concat}[]{\def\@recthy@concatSYM{#1}}
-
+\newcommand*{\@recthy@concatSYM}{\hat{\;}}
+% \DeclareOptionX<\@recthy@family>{emptystr}[]{\def\@recthy@EmptyStr{#1}}
+% \DeclareOptionX<\@recthy@family>{concat}[]{\def\@recthy@concatSYM{#1}}
+\DeclareOptionX{emptystr}{\def\@recthy@EmptyStr{#1}}
+\DeclareOptionX{concat}{\def\@recthy@concatSYM{#1}}
\AtEndOfPackage{
\ifrecthy@nostrings
@@ -412,7 +568,7 @@
\WithSuffix\def\subset*{\subset^{*}}
\WithSuffix\def\supset*{\supset^{*}}
\WithSuffix\def\subseteq*{\subseteq^{*}}
- \WithSuffix\def\supseteq*{\supseteq^{*}}
+ \WithSuffix\def\supseteq*{\supseteq^{*}}
\providecommand*{\nsupset}{\not\supset}
\providecommand*{\nsubset}{\not\subset}
\WithSuffix\def\nsubset*{\nsubset^{*}}
@@ -461,8 +617,8 @@
\newcommand*{\wck}{\ensuremath{\omega^{ck}_1}}
% \newcommand*{\ordtype}[1]{\ensuremath{\@recthy@abs{#1}_{\kleeneO}}}
\newcommand*{\ordzero}{\ensuremath{0}}
-
- \newcommand*{\kleeneO}{\let\@PMG@parenarg\@PMG@undefined\let\@PMG@braketarg\@PMG@undefined\def\kleeneOSYM{\mathcal{O}}\@kleeneObody}
+ \def\kleeneOSYM{\mathcal{O}}
+ \newcommand*{\kleeneO}{\let\@PMG@parenarg\@PMG@undefined\let\@PMG@braketarg\@PMG@undefined\@kleeneObody}
\newcommand*{\@kleeneObody}{\kleeneOSYM\ifdefined\@PMG@parenarg
^{\@PMG@parenarg}%
\fi%
@@ -472,7 +628,9 @@
\WithSuffix\def\@kleeneObody(#1){\def\@PMG@parenarg{#1}\@kleeneObody}
\WithSuffix\def\@kleeneObody[#1]{\def\@PMG@braketarg{#1}\@kleeneObody}
\WithSuffix\def\@kleeneObody*{\def\kleeneOSYM{\overline{\mathcal{O}}}\@kleeneObody}
-
+
+\newcommand*{\kleeneObelow}[2][]{\kleeneOSYM_{<#2\ifthenelse{\isempty{#1}}{}{, #1}}}
+\let\kleeneOless\kleeneObelow
\newcommand*{\kleeneOuniq}{\kleeneO*}
\let\ordNotations=\kleeneO
@@ -495,7 +653,7 @@
\let\hgtO=\kleenehgt
\newcommand*{\kleenelim}[2]{{#1}_{[#2]}}
\newcommand*{\kleenepred}[1]{{#1}^{-}}
-
+
\fi
}
@@ -531,9 +689,9 @@
%%%%%%%%% Formula Classes
-\newcommand*{\@recthy@CDelta}{\vphantom{\Delta}^{\mathcal{C}}\Delta}
-\newcommand*{\@recthy@CSigma}{\vphantom{\Sigma}^{\mathcal{C}}\Sigma}
-\newcommand*{\@recthy@CPi}{\vphantom{\Pi}^{\mathcal{C}}\Pi}
+\newcommand*{\@recthy@CDelta}{\prescript{\mathcal{C}}{}{\Delta}}
+\newcommand*{\@recthy@CSigma}{\prescript{\mathcal{C}}{}{\Sigma}}
+\newcommand*{\@recthy@CPi}{\prescript{\mathcal{C}}{}{\Pi}}
\DeclareOptionX<\@recthy@family>{cdeltasym}[]{\def\@recthy@CDelta{#1}}
\DeclareOptionX<\@recthy@family>{csigmasym}[]{\def\@recthy@CSigma{#1}}
@@ -700,13 +858,13 @@
- \newcommand*{\Cdeltan}[1]{\CDelta_{#1}}
- \WithSuffix\def\Cdeltan[#1]#2{\Cdeltan{#2}^{#1}}
+ \newcommand*{\Cdeltan}[1]{\CDelta_{#1}}
+ \WithSuffix\def\Cdeltan[#1]#2{\Cdeltan{#2}^{#1}}
\newcommand*{\Cpin}[1]{\CPi_{#1}}
- \WithSuffix\def\Cpin[#1]#2{\Cpin{#2}^{#1}}
+ \WithSuffix\def\Cpin[#1]#2{\Cpin{#2}^{#1}}
\newcommand*{\Csigman}[1]{\CSigma_{#1}}
\WithSuffix\def\Csigman[#1]#2{\CSigma_{#2}^{#1}}
-
+
\newcommand*{\CdeltaZeroN}[1]{\Cdeltan[0]{#1}}
\newcommand*{\CdeltaZeroTwo}{\CdeltaZeroN{2}}
\newcommand*{\CdeltaZeroThree}{\CdeltaZeroN{3}}
@@ -715,8 +873,8 @@
\newcommand*{\CdeltaOneN}[1]{\Cdeltan[1]{#1}}
\newcommand*{\CdeltaOneOne}{\CdeltaOneN{1}}
\newcommand*{\CdeltaOneTwo}{\CdeltaOneN{2}}
- \newcommand*{\CdeltaOneThree}{\CdeltaOneN{3}}
- \newcommand*{\CpiZeroN}[1]{\Cpin[0]{#1}}
+ \newcommand*{\CdeltaOneThree}{\CdeltaOneN{3}}
+ \newcommand*{\CpiZeroN}[1]{\Cpin[0]{#1}}
\newcommand*{\CpiOneN}[1]{\Cpin[1]{#1}}
\newcommand*{\CpiOneOne}{\CpiOneN{1}}
\newcommand*{\CpiOneThree}{\CpiOneN{3}}
@@ -732,8 +890,8 @@
\newcommand*{\CsigmaZeroOne}{\CsigmaZeroN{1}}
\newcommand*{\CsigmaZeroThree}{\CsigmaZeroN{3}}
\newcommand*{\CsigmaZeroTwo}{\CsigmaZeroN{2}}
-
-
+
+
\WithSuffix\def\CsigmaOneN[#1]#2{\Csigma[1,#1]{#2}}
\WithSuffix\def\CsigmaOneOne[#1]{\CsigmaOneN[#1]{1}}
\WithSuffix\def\CsigmaOneThree[#1]{\CsigmaOneN[#1]{3}}
@@ -759,7 +917,7 @@
\WithSuffix\def\CdeltaZeroTwo[#1]{\CdeltaZeroN[#1]{2}}
\WithSuffix\def\CdeltaZeroThree[#1]{\CdeltaZeroN[#1]{3}}
\WithSuffix\def\CdeltaZeroOne[#1]{\CdeltaZeroN[#1]{1}}
-
+
%%%ABREVIATIONS
\newcommand*{\Cdeltaz}{\CdeltaN{0}}
@@ -789,9 +947,9 @@
\newcommand*{\CpiIi}{\CpiOneOne}
\newcommand*{\CpiIii}{\CpiOneTwo}
\newcommand*{\CpiIiii}{\CpiOneThree}
-
+
%%%BOLDFACE
-
+
\newcommand*{\Deltan}[1]{\utilde{\mathbf{\Delta}}_{#1}}
\WithSuffix\def\Deltan[#1]#2{\utilde{\mathbf{\Delta}}^{#1}_{#2}}
% \WithSuffix\def\Deltan(#1)#2{\deltan{#2}\!\left(#1\right)}
@@ -919,7 +1077,7 @@
\newcommand*{\PiIi}{\PiOneOne}
\newcommand*{\PiIii}{\PiOneTwo}
\newcommand*{\PiIiii}{\PiOneThree}
-
+
@@ -929,6 +1087,7 @@
}
+
%%%ABREVIATIONS
@@ -942,14 +1101,10 @@
\newcommand{\Low}[1][]{\ensuremath{ \text{Low}^{#1} }}
\newcommand{\LowN}[2][]{\ensuremath{ \text{Low}^{#1}_{#2} }}
\newcommand{\lowN}[2][]{\ensuremath{ \mathcal{L}^{#1}_{#2} }}
- \newcommand{\req}[2]{\ensuremath{\mathcal{#1}_{#2}}}
\fi
}
-
-% \ProcessOptions*
-\ProcessOptionsX<\@recthy@family>
-
+\AtEndOfPackage{
\ifrecthy@nocomputations
\@packinfo{No computations loading.}
\else
@@ -970,15 +1125,53 @@
{\ifthenelse{\isempty{#3}}{(#4)}{(#3;#4)}%
}}
+ \newcommand*{\thetafnl}[4][]{\Theta_{#2\ifthenelse{\isempty{#1}}{}{,#1} }%
+ \ifthenelse{\isempty{#4}}%
+ {\ifthenelse{\isempty{#3}}%
+ {}% No args then print no parents
+ {(#3)}
+ }%If no oracle we just refer to the functional without any arguments
+ {\ifthenelse{\isempty{#3}}{(#4)}{(#3;#4)}%
+ }}
+
+ \newcommand*{\psifnl}[4][]{\Psi_{#2\ifthenelse{\isempty{#1}}{}{,#1} }%
+ \ifthenelse{\isempty{#4}}%
+ {\ifthenelse{\isempty{#3}}%
+ {}% No args then print no parents
+ {(#3)}
+ }%If no oracle we just refer to the functional without any arguments
+ {\ifthenelse{\isempty{#3}}{(#4)}{(#3;#4)}%
+ }}
+
+ \newcommand*{\phifnl}[4][]{\Phi_{#2\ifthenelse{\isempty{#1}}{}{,#1} }%
+ \ifthenelse{\isempty{#4}}%
+ {\ifthenelse{\isempty{#3}}%
+ {}% No args then print no parents
+ {(#3)}
+ }%If no oracle we just refer to the functional without any arguments
+ {\ifthenelse{\isempty{#3}}{(#4)}{(#3;#4)}%
+ }}
+
+ \newcommand*{\upsilonfnl}[4][]{\Upsilon_{#2\ifthenelse{\isempty{#1}}{}{,#1} }%
+ \ifthenelse{\isempty{#4}}%
+ {\ifthenelse{\isempty{#3}}%
+ {}% No args then print no parents
+ {(#3)}
+ }%If no oracle we just refer to the functional without any arguments
+ {\ifthenelse{\isempty{#3}}{(#4)}{(#3;#4)}%
+ }}
+
\newcommand*{\cequiv}{\mathrel{\backsimeq}}
\newcommand*{\ncequiv}{\mathrel{\not\cequiv}}
\newcommand*{\conv}[1][]{\mathpunct{\downarrow}_{#1}}
+ \let\converge=\conv
%\newcommand*{\convs}[1]{\ensuremath{\conv_{#1}}}
- \newcommand*{\nconv}[1][]{\mathpunct{\mkern-4mu{\arrownot\mkern 4mu \downarrow}_{#1}}}
+% \newcommand*{\nconv}[1][]{\mathpunct{\mkern-4mu{\arrownot\mkern 4mu \downarrow}_{#1}}}
+ \newcommand*{\nconv}[1][]{\mathpunct{\mkern-4mu{\smallsetminus\mkern 4mu \downarrow}_{#1}}}
\newcommand*{\diverge}{\mathpunct{\uparrow}}
% \newcommand*{\use}[2]{\mathscr{u}(#1\ifthenelse{\isempty{#2}}{}{,#2})}
- \newcommand*{\use}[1]{\mathop{\mathbrush{u}}\!\left[{#1}\right]}
+ \newcommand*{\use}[1]{\mathop{\ltx@ifpackageloaded{unicode-math}{\mathbffrak{u}}{\mathfrak{u}}}\!\left[{#1}\right]}
\newcommand*{\REset}{\let\@PMG@parenarg\@PMG@undefined\let\@PMG@braketarg\@PMG@undefined\@REsetbody}
\newcommand*{\@REsetbody}[1]{W\ifdefined\@PMG@parenarg
@@ -998,7 +1191,7 @@
\let\iREAop=\oneREAop
\WithSuffix\def\reaop*#1{\oneREAop{#1}}
%converges
-
+
\fi
@@ -1009,14 +1202,14 @@
%%%%%%Turing Degrees
- \newcommand*{\Tdeg}[1]{\utilde{#1}}
+ \newcommand*{\Tdeg}[1]{\utilde{\mathbf{#1}}}
\newcommand*{\Tjump}[1]{#1'}
\let\jump=\Tjump
\newcommand*{\jumpn}[2]{#1^{(#2)}}
\newcommand*{\jjump}[1]{#1''}
% \newcommand*{\Tzerosym}{\MVZero}
- \newcommand*{\Tzerosym}{\MVZero}
+ \newcommand*{\Tzerosym}{\mathbb{0}}
\newcommand*{\Tzero}{{\Tzerosym}}
\newcommand*{\zeron}[1]{{\Tzerosym}^{(#1)}}
\newcommand*{\zeroj}{\jump{{\Tzerosym}}}
@@ -1067,12 +1260,17 @@
\newcommand*{\ttgeq}{\geq_{\@recthy@ttSYM}}
\newcommand*{\ttgtr}{>_{\@recthy@ttSYM}}
\newcommand*{\ttless}{<_{\@recthy@ttSYM}}
- \newcommand*{\ttTleq}{\nleq_{\@recthy@ttSYM}}
- \newcommand*{\ttTgeq}{\ngeq_{\@recthy@ttSYM}}
+ \newcommand*{\ttnleq}{\nleq_{\@recthy@ttSYM}}
+ \newcommand*{\ttngeq}{\ngeq_{\@recthy@ttSYM}}
\fi
+}
+
+% \ProcessOptions*
+% \ProcessOptionsX<\@recthy@family>
+\ProcessOptionsX