diff options
Diffstat (limited to 'Master/texmf-dist/tex/latex/logix/logix.sty')
-rw-r--r-- | Master/texmf-dist/tex/latex/logix/logix.sty | 448 |
1 files changed, 292 insertions, 156 deletions
diff --git a/Master/texmf-dist/tex/latex/logix/logix.sty b/Master/texmf-dist/tex/latex/logix/logix.sty index a96b11b51ea..905db9b17cb 100644 --- a/Master/texmf-dist/tex/latex/logix/logix.sty +++ b/Master/texmf-dist/tex/latex/logix/logix.sty @@ -1,6 +1,6 @@ % Copyright (c) 2001..2021 by Michael Lee Finney. % -% logix.sty - 2021-01-17 v1.08 +% logix.sty - 2021-07-06 v1.09 % % This work may be distributed and/or modified under the conditions of the % LaTeX Project Public License, either version 1.3 of this license or (at your @@ -28,11 +28,12 @@ \NeedsTeXFormat{LaTeX2e}[2020/02/02] \ProvidesPackage{logix} - [2021-01-17 v1.08 (Michael Lee Finney) Supplemental logical and mathematical symbols for XeLaTex / LuaLaTeX.] + [2021-07-06 v1.09 (Michael Lee Finney) Supplemental logical and mathematical symbols for XeLaTex / LuaLaTeX.] \ProvidesFile{logix.otf} - [2021-01-17 v1.08 (Michael Lee Finney) OpenType Unicode font.] + [2021-07-06 v1.09 (Michael Lee Finney) OpenType Unicode font.] \RequirePackage{iftex} \RequirePackage[bold-style=ISO]{unicode-math} + \RequirePackage{mathtools} \RequirePackage{arydshln} % Checks for LuaTex or XeTex as engines. @@ -85,23 +86,39 @@ % LogixDefn provides structured formatting for logic definitions. There is an % optional parameter, which must be a horizontal length. If present, all of the % definitions must fit within that length. The LogixDefn environment defines the -% Line macro, which has three parameters if the optional LogixDefn parameter is not -% present and otherwise four. The optional fourth parameter may not be omitted if -% the length parameter is present and contains a comment to placed at the end of -% the line. The basic three parameters for the Line macro are the definition's name, -% optional number (but the empty argument must be present) and the definition itself, -% which is typeset in math mode. Two examples of its use are: +% Line macro, which has four parameters if the optional LogixDefn parameter is not +% present and otherwise five. The optional fifth (sixth) parameter may not be +% omitted if the length parameter is present and contains a comment to placed at +% the end of the line. The basic four parameters for the Line macro are the +% definition's name, optional number (but the empty argument must be present) +% and the left and right definition expressions, which is typeset in math mode. +% The left expression is right aligned, they are separated by the definition +% symbol (:=) and the right expression is left aligned. Grouped definitions are +% aligned on the definition symbol. Two examples of its use are: % % \begin{LogixDefn} -% \Line{Special}{}{ \OpnParn \prop{p} \WkEquv \prop{q} \ClsParn \Defn \OpnParn \prop{p} \WkImpl \prop{q} \ClsParn \Nd \OpnParn \prop{q} \WkImpl \prop{p} \ClsParn } -% \Line{Df} {4}{ \OpnParn \prop{p} \WkEquv \prop{q} \ClsParn \Defn \OpnParn \prop{p} \WkImpl \prop{q} \ClsParn \Nd \OpnParn \prop{q} \WkImpl \prop{p} \ClsParn } +% \Line{Neg} {1}{\symsau{p}}{\symsau{q}} +% \Line{Conj}{} {\symsau{p}}{\symsau{q}} % \end{LogixDefn} % -% \begin{LogixDefn}[15em] -% \Line{Df}{1}{ \OpnParn \prop{p} \WkEquv \prop{q} \ClsParn \Defn \OpnParn \prop{p} \WkImpl \prop{q} \ClsParn \Nd \OpnParn \prop{q} \WkImpl \prop{p} \ClsParn } { Some comment } -% \Line{Df}{2}{ \OpnParn \prop{p} \WkEquv \prop{q} \ClsParn \Defn \OpnParn \prop{p} \WkImpl \prop{q} \ClsParn \Nd \OpnParn \prop{q} \WkImpl \prop{p} \ClsParn } { Yet another } +% \begin{LogixDefn}[5em] +% \Line{Df}{1}{\symsau{p}}{\symsau{q}}{Some comment} +% \Line{Df}{2}{\symsau{p}}{\symsau{q}}{Yet another comment} % \end{LogixDefn} % +% LogixAxiom is similar to LogixDefn except that it only has one expression +% which is left aligned. Two examples of its use are +% +% \begin{LogixAxiom} +% \Line{Rp} {12} {\symsai{NegationFree}\OpnParn \symsau{p} \WkEquv \symsau{q} \ClsParn, \symsau{p} \WkEquv \symsau{q}, \symsau{e} \Seq \symsau{e}\OpnBrkt \symsau{q} \RightSlash \symsau{p} \ClsBrkt } +% \Line{Rp} {2} {\symsai{NegationFree}\OpnParn \symsau{p} \WkEquv \symsau{q} \ClsParn, \symsau{p} \WkEquv \symsau{q} \Seq \symsau{e} \WkEquv \symsau{e}\OpnBrkt \symsau{q} \RightSlash \symsau{p} \ClsBrkt } +% \end{LogixAxiom} +% +% \begin{LogixAxiom}[10em] +% \Line{Ax} {1} {\symsau{p} \Equv \symsau{q}, \symsau{e} \Seq \symsau{e}\OpnBrkt \symsau{q} \RightSlash \symsau{p} \ClsBrkt } {Sequent replacement rule.} +% \Line{Ax} {2} {\symsau{p} \Equv \symsau{q} \Seq \symsau{e} \Equv \symsau{e}\OpnBrkt \symsau{q} \RightSlash \symsau{p} \ClsBrkt } {Equivlance replacement rule.} +% \end{LogixAxiom} +% % LogixProof provides structed formatting for logic proofs. There are four % arguments with the first one optional. As for LogixDefn the optional argument % is a horizontal length argument, and provides a width for each line which is @@ -113,8 +130,8 @@ % to hold for all theorems in a system. The third parameter is the statement of % the proof. % -% The LogixProof environment defines two macros -- Dash and Line, which are -% identical except that Dash is followed by a dashed line separator and Line is +% The LogixProof environment defines three macros -- Blnk, Dash and Line, which +% are identical except that Dash is followed by a dashed line separator and Line is % followed by a solid line separator. Each of these macros have four parameters % (five when the length argument is present). The first is the line number. It % is typeset in math mode so that subscripts may be used (sometimes useful in @@ -126,7 +143,7 @@ % may be empty, allowing for using the comment for justification (a common style % in some textbooks and papers). Here is an example with comments: % -% \begin{LogixProof}[5em] {Th 46} {} {\prop{p}\Comma\prop{q}\Seq\prop{r}} +% \begin{LogixProof}[5em] {Th 46} {} {\prop{p}\Coma\prop{q}\Seq\prop{r}} % \Dash {1} {Th 41} {} {\prop{r} \Nd \prop{s} \Impl \prop{q}} {Comment for first line} % \Dash {2} {Cn 2 } {} {\prop{r}} {Comment for second line} % \Dash {3} {Th 38} {2} {\prop{r}} {} @@ -138,12 +155,23 @@ % assumed to hold for the expression as a sequent. An example of its use (but % without comments and with solid lines) is: % -% \begin{LogixSeqnt} {Th 46} {Dt 1} {\prop{p}\Comma\prop{q}\Seq\prop{r}} -% \Line {1} {Th 41} {} {\prop{p}\Comma\prop{q}} {\prop{r}} -% \Line {2} {Cn 2 } {} {\prop{p}\Comma\prop{q}} {\prop{r}} +% \begin{LogixSeqnt} {Th 46} {Dt 1} {\prop{p}\Coma\prop{q}\Seq\prop{r}} +% \Line {1} {Th 41} {} {\prop{p}\Coma\prop{q}} {\prop{r}} +% \Line {2} {Cn 2 } {} {\prop{p}\Coma\prop{q}} {\prop{r}} % \Line {3} {Th 38} {2} { } {\prop{r}} % \end{LogixSeqnt} % +% The LogixTable environment sets a few display options and then invokes +% the tabular environment. An exmple of its usage for a semantic table is: +% +% \begin{LogixTable}{c | c c c c } +% \Nd & \symSau{f} & \symSau{u} & \symSau{o} & \symSau{t} \\ \hline +% \symSau{f} & \symSau{f} & \symSau{f} & \symSau{f} & \symSau{f} \\ +% \symSau{u} & \symSau{f} & \symSau{u} & \symSau{f} & \symSau{u} \\ +% \symSau{o} & \symSau{f} & \symSau{f} & \symSau{o} & \symSau{o} \\ +% \symSau{t} & \symSau{f} & \symSau{u} & \symSau{o} & \symSau{t} \\ +% \end{LogixTable} +% % Note that none of these environments are indented by default. Often, % horizontal space is at a premium, so any indentation is left to the user. % @@ -161,6 +189,31 @@ \newcommand \PrfEnd {\rule[-0.375em]{0pt}{1.30em}} \renewcommand{\arraystretch}{0} \ifx& + \newcommand \Line[4]{% + \ifx&##2&% + ##1. \hspace{0.25em} & & ##3 & \Defn & ##4 & \PrfEnd \\% + \else% + ##1 \hspace{0.35em} & ##2. \hspace{0.25em} & ##3 & \Defn & ##4 & \PrfEnd \\% + \fi% + } + \else + \newcommand \Line[5]{% + \ifx&##2&% + ##1. \hspace{0.25em} & & ##3 & \Defn & \mathmakebox[#1][l]{##4} $##5$ & \PrfEnd \\% + \else% + ##1 \hspace{0.35em} & ##2. \hspace{0.25em} & ##3 & \Defn & \mathmakebox[#1][l]{##4} $##5$ & \PrfEnd \\% + \fi% + } + \fi + \noindent\begin{tabular}{ @{} l @{} r @{} >{$} r <{$} @{} >{$} c <{$} @{} >{$} l <{$} @{} c @{} }}{% + \end{tabular} } + +% Environment for logic axioms. + + \newenvironment{LogixAxiom}[1][]{% + \newcommand \PrfEnd {\rule[-0.375em]{0pt}{1.30em}} + \renewcommand{\arraystretch}{0} + \ifx& \newcommand \Line[3]{% \ifx&##2&% ##1. \hspace{0.25em} & & ##3 & \PrfEnd \\% @@ -190,11 +243,13 @@ \newcommand \PrfBgn {\-\ \hspace{0.50em}}% \newcommand \PrfEnd {\rule[-0.375em]{0pt}{1.35em}}% \ifx& - \newcommand \Dash[4] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrkt}##3{\ClsBrkt}\fi & ##4 & \PrfEnd \\ \hdashline} - \newcommand \Line[4] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrkt}##3{\ClsBrkt}\fi & ##4 & \PrfEnd \\ \hline} + \newcommand \Blnk[4] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & \PrfEnd \\} + \newcommand \Dash[4] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & \PrfEnd \\ \hdashline} + \newcommand \Line[4] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & \PrfEnd \\ \hline} \else - \newcommand \Dash[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrkt}##3{\ClsBrkt}\fi & \mathmakebox[#1][l]{##4} $##5$ & \PrfEnd \\ \hdashline} - \newcommand \Line[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrkt}##3{\ClsBrkt}\fi & \mathmakebox[#1][l]{##4} $##5$ & \PrfEnd \\ \hline} + \newcommand \Blnk[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & \mathmakebox[#1][l]{##4} $##5$ & \PrfEnd \\} + \newcommand \Dash[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & \mathmakebox[#1][l]{##4} $##5$ & \PrfEnd \\ \hdashline} + \newcommand \Line[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & \mathmakebox[#1][l]{##4} $##5$ & \PrfEnd \\ \hline} \fi \noindent\begin{tabular}{ @{\hspace{0.60em}} l @{\hspace{0.50em}}} \noindent\hspace{-0.50em}\begin{tabular}{ @{} l @{} l @{} @{\hspace{0.25em}} >{$} l <{$} @{} c @{} } @@ -217,11 +272,13 @@ \newcommand \PrfBgn {\-\ \hspace{0.50em}}% \newcommand \PrfEnd {\rule[-0.375em]{0pt}{1.35em}}% \ifx& - \newcommand \Dash[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrkt}##3{\ClsBrkt}\fi & ##4 & ##5 & \PrfEnd \\ \hdashline} - \newcommand \Line[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrkt}##3{\ClsBrkt}\fi & ##4 & ##5 & \PrfEnd \\ \hline} + \newcommand \Blnk[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & ##5 & \PrfEnd \\} + \newcommand \Dash[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & ##5 & \PrfEnd \\ \hdashline} + \newcommand \Line[5] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & ##5 & \PrfEnd \\ \hline} \else - \newcommand \Dash[6] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrkt}##3{\ClsBrkt}\fi & ##4 & \mathmakebox[#1][l]{##5} $##6$ & \PrfEnd \\ \hdashline} - \newcommand \Line[6] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrkt}##3{\ClsBrkt}\fi & ##4 & \mathmakebox[#1][l]{##5} $##6$ & \PrfEnd \\ \hline} + \newcommand \Blnk[6] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & \mathmakebox[#1][l]{##5} $##6$ & \PrfEnd \\} + \newcommand \Dash[6] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & \mathmakebox[#1][l]{##5} $##6$ & \PrfEnd \\ \hdashline} + \newcommand \Line[6] { \hspace{0.35em} ##1. & \ifx&##2&\else \hspace{0.25em}##2.\fi & \ifx&##3&\else\hspace{0.25em}{\OpnBrac}##3{\ClsBrac}\fi & ##4 & \mathmakebox[#1][l]{##5} $##6$ & \PrfEnd \\ \hline} \fi \noindent\begin{tabular}{ @{\hspace{0.60em}} l @{\hspace{0.50em}}} \noindent\hspace{-0.50em}\begin{tabular}{ @{} l @{} l @{} @{\hspace{0.25em}} >{$} l <{$} @{} c @{} } @@ -235,6 +292,15 @@ @{} c @{} } }{% \end{tabular} \end{tabular}} +% Environment for consistent semantic tables, replaces use of tabular environment. + + \newenvironment{LogixTable}[2][]{% + \setlength{\dashlinedash}{2pt} + \setlength{\dashlinegap}{2pt} + \setlength{\arrayrulewidth}{0.2pt} + \renewcommand{\arraystretch}{1.3}% + \begin{tabular}[#1]{#2}}{% + \end{tabular}} % Define the logix math symbols. These symbols have sidebearings defined in the font. % Applying the symbol type results in extra white space so they are declared as @@ -293,7 +359,7 @@ \newcommand \OpnDblParn {\lgl{E31B}\relax} % Open Double Parenthesis \newcommand \OpnCeil {\lgl{E31C}\relax} % Open Ceiling \newcommand \OpnFloor {\lgl{E31D}\relax} % Open Floor - \newcommand \OpnForce {\lgl{E31E}\relax} % Open Turnstile + \newcommand \OpnTurn {\lgl{E31E}\relax} % Open Turnstile \newcommand \OpnCntx {\lgx{E31F}\relax} % Open Context Quote \newcommand \OpnDblGrp {\lgl{E320}\relax} % Open Double Group Brace \newcommand \OpnDblBar {\lgl{E321}\relax} % Open Double Vertical Bar @@ -329,7 +395,7 @@ \newcommand \OpnDblParnS {\left\OpnDblParn\relax} % Stretchy Open Double Parenthesis \newcommand \OpnCeilS {\left\OpnCeil\relax} % Stretchy Open Ceiling \newcommand \OpnFloorS {\left\OpnFloor\relax} % Stretchy Open Floor - \newcommand \OpnForceS {\left\OpnForce\relax} % Stretchy Open Turnstile + \newcommand \OpnTurnS {\left\OpnTurn\relax} % Stretchy Open Turnstile \newcommand \OpnCntxS {\left\OpnCntx\relax} % Stretchy Open Context Quote \newcommand \OpnDblGrpS {\left\OpnDblGrp\relax} % Stretchy Open Double Group Brace \newcommand \OpnDblBarS {\left\OpnDblBar\relax} % Stretchy Open Double Vertical Bar @@ -365,7 +431,7 @@ \newcommand \ClsDblParn {\lgl{E35B}\relax} % Close Double Parenthesis \newcommand \ClsCeil {\lgr{E35C}\relax} % Close Ceiling \newcommand \ClsFloor {\lgr{E35D}\relax} % Close Floor - \newcommand \ClsForce {\lgr{E35E}\relax} % Close Turnstile + \newcommand \ClsTurn {\lgr{E35E}\relax} % Close Turnstile \newcommand \ClsCntx {\lgx{E35F}\relax} % Close Context Quote \newcommand \ClsDblGrp {\lgr{E360}\relax} % Close Double Group Brace \newcommand \ClsDblBar {\lgr{E361}\relax} % Close Double Vertical Bar @@ -401,7 +467,7 @@ \newcommand \ClsDblParnS {\right\ClsDblParn\relax} % Stretchy Close Double Parenthesis \newcommand \ClsCeilS {\right\ClsCeil\relax} % Stretchy Close Ceiling \newcommand \ClsFloorS {\right\ClsFloor\relax} % Stretchy Close Floor - \newcommand \ClsForceS {\right\ClsForce\relax} % Stretchy Close Turnstile + \newcommand \ClsTurnS {\right\ClsTurn\relax} % Stretchy Close Turnstile \newcommand \ClsCntxS {\right\ClsCntx\relax} % Stretchy Close Context Quote \newcommand \ClsDblGrpS {\right\ClsDblGrp\relax} % Stretchy Close Double Group Brace \newcommand \ClsDblBarS {\right\ClsDblBar\relax} % Stretchy Close Vertical Double Bar @@ -495,10 +561,10 @@ \newcommand \XWkMtEquv {\lgx{E81E}\relax} % Extra Long Weak Material Equivalence \newcommand \NotXWkMtEquv {\lgx{E81F}\relax} % Extra Long Not Weak Material Equivalence - \newcommand \SMtImpl {\lgx{E820}\relax} % Short WMaterial Implication - \newcommand \NotSMtImpl {\lgx{E821}\relax} % Short NNot Material Implication - \newcommand \SMtEquv {\lgx{E822}\relax} % Short WMaterial Equivalence - \newcommand \NotSMtEquv {\lgx{E823}\relax} % Short NNot Material Equivalence + \newcommand \SMtImpl {\lgx{E820}\relax} % Short Material Implication + \newcommand \NotSMtImpl {\lgx{E821}\relax} % Short Not Material Implication + \newcommand \SMtEquv {\lgx{E822}\relax} % Short Material Equivalence + \newcommand \NotSMtEquv {\lgx{E823}\relax} % Short Not Material Equivalence \newcommand \MtImpl {\lgx{E824}\relax} % Material Implication \newcommand \NotMtImpl {\lgx{E825}\relax} % Not Material Implication \newcommand \MtEquv {\lgx{E826}\relax} % Material Equivalence @@ -512,10 +578,10 @@ \newcommand \XMtEquv {\lgx{E82E}\relax} % Extra Long Material Equivalence \newcommand \NotXMtEquv {\lgx{E82F}\relax} % Extra Long Not Material Equivalence - \newcommand \SInImpl {\lgx{E830}\relax} % Short WIntuitionistic Implication - \newcommand \NotSInImpl {\lgx{E831}\relax} % Short NNot Intuitionistic Implication - \newcommand \SInEquv {\lgx{E832}\relax} % Short WIntuitionistic Equivalence - \newcommand \NotSInEquv {\lgx{E833}\relax} % Short NNot Intuitionistic Equivalence + \newcommand \SInImpl {\lgx{E830}\relax} % Short Intuitionistic Implication + \newcommand \NotSInImpl {\lgx{E831}\relax} % Short Not Intuitionistic Implication + \newcommand \SInEquv {\lgx{E832}\relax} % Short Intuitionistic Equivalence + \newcommand \NotSInEquv {\lgx{E833}\relax} % Short Not Intuitionistic Equivalence \newcommand \InImpl {\lgx{E834}\relax} % Intuitionistic Implication \newcommand \NotInImpl {\lgx{E835}\relax} % Not Intuitionistic Implication \newcommand \InEquv {\lgx{E836}\relax} % Intuitionistic Equivalence @@ -529,10 +595,10 @@ \newcommand \XInEquv {\lgx{E83E}\relax} % Extra Long Intuitionistic Equivalence \newcommand \NotXInEquv {\lgx{E83F}\relax} % Extra Long Not Intuitionistic Equivalence - \newcommand \SWkImpl {\lgx{E840}\relax} % Short WWeak Implication - \newcommand \NotSWkImpl {\lgx{E841}\relax} % Short NNot Weak Implication - \newcommand \SWkEquv {\lgx{E842}\relax} % Short WWeak Implication Equivalence - \newcommand \NotSWkEquv {\lgx{E843}\relax} % Short NNot Weak Implication Equivalence + \newcommand \SWkImpl {\lgx{E840}\relax} % Short Weak Implication + \newcommand \NotSWkImpl {\lgx{E841}\relax} % Short Not Weak Implication + \newcommand \SWkEquv {\lgx{E842}\relax} % Short Weak Implication Equivalence + \newcommand \NotSWkEquv {\lgx{E843}\relax} % Short Not Weak Implication Equivalence \newcommand \WkImpl {\lgx{E844}\relax} % Weak Implication \newcommand \NotWkImpl {\lgx{E845}\relax} % Not Weak Implication \newcommand \WkEquv {\lgx{E846}\relax} % Weak Implication Equivalence @@ -546,10 +612,10 @@ \newcommand \XWkEquv {\lgx{E84E}\relax} % Extra Long Weak Implication Equivalence \newcommand \NotXWkEquv {\lgx{E84F}\relax} % Extra Long Not Weak Implication Equivalence - \newcommand \SImpl {\lgx{E850}\relax} % Short WImplication - \newcommand \NotSImpl {\lgx{E851}\relax} % Short NNot Implication - \newcommand \SEquv {\lgx{E852}\relax} % Short WImplication Equivalence - \newcommand \NotSEquv {\lgx{E853}\relax} % Short NNot Implication Equivalence + \newcommand \SImpl {\lgx{E850}\relax} % Short Implication + \newcommand \NotSImpl {\lgx{E851}\relax} % Short Not Implication + \newcommand \SEquv {\lgx{E852}\relax} % Short Implication Equivalence + \newcommand \NotSEquv {\lgx{E853}\relax} % Short Not Implication Equivalence \newcommand \Impl {\lgx{E854}\relax} % Implication \newcommand \NotImpl {\lgx{E855}\relax} % Not Implication \newcommand \Equv {\lgx{E856}\relax} % Implication Equivalence @@ -563,10 +629,10 @@ \newcommand \XEquv {\lgx{E85E}\relax} % Extra Long Implication Equivalence \newcommand \NotXEquv {\lgx{E85F}\relax} % Extra Long Not Implication Equivalence - \newcommand \SWkEntail {\lgx{E860}\relax} % Short WWeak Entailment - \newcommand \NotSWkEntail {\lgx{E861}\relax} % Short NNot Weak Entailment - \newcommand \SWkEntailEquv {\lgx{E862}\relax} % Short WWeak Entailment Equivalence - \newcommand \NotSWkEntailEquv {\lgx{E863}\relax} % Short NNot Weak Entailment Equivalence + \newcommand \SWkEntail {\lgx{E860}\relax} % Short Weak Entailment + \newcommand \NotSWkEntail {\lgx{E861}\relax} % Short Not Weak Entailment + \newcommand \SWkEntailEquv {\lgx{E862}\relax} % Short Weak Entailment Equivalence + \newcommand \NotSWkEntailEquv {\lgx{E863}\relax} % Short Not Weak Entailment Equivalence \newcommand \WkEntail {\lgx{E864}\relax} % Weak Entailment \newcommand \NotWkEntail {\lgx{E865}\relax} % Not Weak Entailment \newcommand \WkEntailEquv {\lgx{E866}\relax} % Weak Entailment Equivalence @@ -580,10 +646,10 @@ \newcommand \XWkEntailEquv {\lgx{E86E}\relax} % Extra Long Weak Entailment Equivalence \newcommand \NotXWkEntailEquv {\lgx{E86F}\relax} % Extra Long Not Weak Entailment Equivalence - \newcommand \SEntail {\lgx{E870}\relax} % Short WEntailment - \newcommand \NotSEntail {\lgx{E871}\relax} % Short NNot Entailment - \newcommand \SEntailEquv {\lgx{E872}\relax} % Short WEntailment Equivalence - \newcommand \NotSEntailEquv {\lgx{E873}\relax} % Short NNot Entailment Equivalence + \newcommand \SEntail {\lgx{E870}\relax} % Short Entailment + \newcommand \NotSEntail {\lgx{E871}\relax} % Short Not Entailment + \newcommand \SEntailEquv {\lgx{E872}\relax} % Short Entailment Equivalence + \newcommand \NotSEntailEquv {\lgx{E873}\relax} % Short Not Entailment Equivalence \newcommand \Entail {\lgx{E874}\relax} % Entailment \newcommand \NotEntail {\lgx{E875}\relax} % Not Entailment \newcommand \EntailEquv {\lgx{E876}\relax} % Entailment Equivalence @@ -615,12 +681,22 @@ \newcommand \Or {\lgx{E6A1}\relax} % Bitwise OR operator / Logical Disjunction \newcommand \Nt {\lgx{E0C0}\relax} % Bitwise NOT operator / Logical Negation \newcommand \Ngt {\lgx{E64C}\relax} % Classical Logical Negation + \newcommand \Lnand {\lgx{E9F6}\relax} % Logical NAND + \newcommand \Lnor {\lgx{E9F7}\relax} % Logical NOR + \newcommand \Lxor {\lgx{E293}\relax} % Logical XOR + \newcommand \Shfr {\lgx{E07F}\relax} % Sheffer's Stroke (Logical NAND) \newcommand \Nand {\lgx{E6A2}\relax} % Bitwise NAND operator \newcommand \Nor {\lgx{E6A3}\relax} % Bitwise NOR operator \newcommand \Xor {\lgx{E6A5}\relax} % Bitwise XOR operator - \newcommand \LcgCohrnc {\lgx{E068}\relax} % Logical Coherence - \newcommand \BncCohrnc {\lgx{E078}\relax} % Bunch Coherence + \newcommand \SbNd {\lgx{E680}\relax} % Slanted Bar And + \newcommand \SbOr {\lgx{E681}\relax} % Slanted Bar Or + \newcommand \SbNand {\lgx{E682}\relax} % Slanted Bar Nand + \newcommand \SbNor {\lgx{E683}\relax} % Slanted Bar Nor + \newcommand \SbXor {\lgx{E685}\relax} % Slanted Bar Xor + + \newcommand \LcgBistab {\lgx{E068}\relax} % Logical Bistability + \newcommand \BncBistab {\lgx{E078}\relax} % Bunch Bistability \newcommand \TFNone {\lgx{E010}\relax} % Neither true nor false \newcommand \NTrue {\lgx{E011}\relax} % Not true @@ -633,14 +709,24 @@ \newcommand \QuantCon {\lgx{E891}\relax} % Quantified Conjunction \newcommand \QuantDis {\lgx{E890}\relax} % Quantified Disjuntion + \newcommand \ForAll {\lgx{E8C0}\relax} % Universal Individual Quantifier \newcommand \Exists {\lgx{E8C1}\relax} % Existential Individual Quantifier \newcommand \Unique {\lgx{E8C2}\relax} % Unique Existential Individual Quantifier + \newcommand \NtExists {\lgx{E8C3}\relax} % Existential Individual Quantifier Negation + \newcommand \HdnExists {\lgx{E8C4}\relax} % Hidden Variable Existential Individual Quantifier + \newcommand \HdnForAll {\lgx{E8C5}\relax} % Hidden Variable Universal Individual Quantifier + \newcommand \BnchForAll {\lgx{E8D0}\relax} % Universal Bunch Quantifier \newcommand \BnchExists {\lgx{E8D1}\relax} % Existential Bunch Quantifier \newcommand \BnchUnique {\lgx{E8D2}\relax} % Unique Existential Bunch Quantifier + \newcommand \BnchNtExists {\lgx{E8D3}\relax} % Existential Bunch Quantifier Negation + \newcommand \BnchHdnExists {\lgx{E8D4}\relax} % Hidden Variable Existential Bunch Quantifier + \newcommand \BnchHdnForAll {\lgx{E8D5}\relax} % Hidden Variable Universal Bunch Quantifier + \newcommand \BndMap {\lgx{E030}\relax} % Map Abstraction + \newcommand \NoSpace {\lgx{E05A}\relax} % Zero width space \newcommand \Dt {\lgx{E098}\relax} % Dot \newcommand \Coma {\lgx{E099}\relax} % Comma \newcommand \Semicln {\lgx{E09A}\relax} % Semicolon @@ -663,7 +749,8 @@ \newcommand \Circumflex {\lgx{E03F}\relax} % ASCII Circumflex \newcommand \Numbr {\lgx{E04F}\relax} % Number sign \newcommand \Underscore {\lgx{E0AF}\relax} % Underscore - \newcommand \Tild {\lgx{007E}\relax} % Tilde + \newcommand \Tild {\lgx{E06E}\relax} % Tilde + \newcommand \Cpyrght {\lgx{E06F}\relax} % Copyright \newcommand \SingleQuote {\lgx{E08B}\relax} % Single quote \newcommand \DoubleQuote {\lgx{E09B}\relax} % Double quote \newcommand \TripleQuote {\lgx{E0AB}\relax} % Triple quote @@ -671,19 +758,30 @@ \newcommand \LeftSlash {\lgx{E103}\relax} % Left (back) slash \newcommand \RightSlash {\lgx{E102}\relax} % Right (forward) slash + \newcommand \ShftAccent {\lgx{EAC5}\relax} % Shift for accents \newcommand \ShftSuper {\lgx{EAC3}\relax} % Shift for superscripts \newcommand \ShftSubscr {\lgx{EAC4}\relax} % Shift for subscripts - \newcommand \ShftAccent {\lgx{EAC5}\relax} % Shift for accents + \newcommand \RplcAllBnd {\lgx{EA20}\relax} % Replace All Bound Variables (left / right) \newcommand \RplcAllBndRight {\lgx{E9D4}\relax} % Replace All Bound Variables (right) \newcommand \RplcAllBndLeft {\lgx{E9D5}\relax} % Replace All Bound Variables (left) + + \newcommand \RplcAll {\lgx{EA21}\relax} % Replace All (left / right) \newcommand \RplcAllRight {\lgx{E9DA}\relax} % Replace All (right) \newcommand \RplcAllLeft {\lgx{E9DB}\relax} % Replace All (left) + + \newcommand \RplcFree {\lgx{EA22}\relax} % Replace Any Free Variables (left / right) \newcommand \RplcFreeRight {\lgx{E9F0}\relax} % Replace Any Free Variables (right) \newcommand \RplcFreeLeft {\lgx{E9F1}\relax} % Replace Any Free Variables (left) + + \newcommand \RplcEquv {\lgx{EA24}\relax} % Replace Equivalent Expressions (left / right) \newcommand \RplcEquvRight {\lgx{E9F8}\relax} % Replace Equivalent Expressions (right) \newcommand \RplcEquvLeft {\lgx{E9F9}\relax} % Replace Equivalent Expressions (left) + \newcommand \RplcAny {\lgx{EA23}\relax} % Replace Any (left / right) + \newcommand \RplcAnyRight {\lgx{E9FA}\relax} % Replace Any (right) + \newcommand \RplcAnyLeft {\lgx{E9FB}\relax} % Replace Any (left) + \newcommand \LstFix {\lgx{E031}\relax} % Least Fixed Point \newcommand \GrtFix {\lgx{E032}\relax} % Greatest Fixed Point \newcommand \Choice {\lgx{E033}\relax} % Choice @@ -692,36 +790,61 @@ \newcommand \FrstOrd {\lgx{E039}\relax} % First Ordinal (omega) \newcommand \Infin {\lgx{E03A}\relax} % Infinity - \newcommand \LogNec {\lgx{E230}\relax} % Logical Necessity (temporal always or henceforth) - \newcommand \LogPos {\lgx{E232}\relax} % Logical Possibility (temporal sometime or eventually) - \newcommand \LogNext {\lgx{E233}\relax} % Logical Next (temporal next or nexttime) - \newcommand \LogFutr {\lgx{E234}\relax} % Logical Future (temporal in the future) - \newcommand \LogPast {\lgx{E235}\relax} % Logical Past (temporal in the past) - \newcommand \LogCont {\lgx{E236}\relax} % Logical Contingency - \newcommand \LogNonCont {\lgx{E237}\relax} % Logical Non-contingency - - \newcommand \Nec {\lgx{E270}\relax} % Necessity (temporal always or henceforth) - \newcommand \Pos {\lgx{E272}\relax} % Possibility (temporal sometime or eventually) - \newcommand \Next {\lgx{E273}\relax} % Next (temporal next or nexttime) - \newcommand \Futr {\lgx{E274}\relax} % Future (temporal in the future) - \newcommand \Past {\lgx{E275}\relax} % Past (temporal in the past) - \newcommand \Cont {\lgx{E276}\relax} % Contingency - \newcommand \NonCont {\lgx{E277}\relax} % Non-contingency - - \newcommand \FacNec {\lgx{E220}\relax} % Factual Necessity (temporal always or henceforth) - \newcommand \FacPos {\lgx{E222}\relax} % Factual Possibility (temporal sometime or eventually) - \newcommand \FacNext {\lgx{E223}\relax} % Factual Next (temporal next or nexttime) - \newcommand \FacFutr {\lgx{E224}\relax} % Factual Future (temporal in the future) - \newcommand \FacPast {\lgx{E225}\relax} % Factual Past (temporal in the past) - \newcommand \FacCont {\lgx{E226}\relax} % Factual Contingency - \newcommand \FacNonCont {\lgx{E227}\relax} % Factual Non-contingency + \newcommand \Nec {\lgx{E220}\relax} % Necessity + \newcommand \Pos {\lgx{E222}\relax} % Possibility + \newcommand \Next {\lgx{E223}\relax} % Next + \newcommand \Futr {\lgx{E224}\relax} % Future + \newcommand \Past {\lgx{E225}\relax} % Past + \newcommand \Cont {\lgx{E226}\relax} % Contingency + \newcommand \NonCont {\lgx{E227}\relax} % Non-contingency + + \newcommand \FacNec {\lgx{E230}\relax} % Factual Necessity + \newcommand \FacPos {\lgx{E232}\relax} % Factual Possibility + \newcommand \FacNext {\lgx{E233}\relax} % Factual Next + \newcommand \FacFutr {\lgx{E234}\relax} % Factual Future + \newcommand \FacPast {\lgx{E235}\relax} % Factual Past + \newcommand \FacCont {\lgx{E236}\relax} % Factual Contingency + \newcommand \FacNonCont {\lgx{E237}\relax} % Factual Non-contingency + + \newcommand \DeoNec {\lgx{E240}\relax} % Deontic Necessity + \newcommand \DeoPos {\lgx{E242}\relax} % Deontic Possibility + \newcommand \DeoNext {\lgx{E243}\relax} % Deontic Next + \newcommand \DeoFutr {\lgx{E244}\relax} % Deontic Future + \newcommand \DeoPast {\lgx{E245}\relax} % Deontic Past + \newcommand \DeoCont {\lgx{E246}\relax} % Deontic Contingency + \newcommand \DeoNonCont {\lgx{E247}\relax} % Deontic Non-contingency + + \newcommand \LogNec {\lgx{E250}\relax} % Logical Necessity + \newcommand \LogPos {\lgx{E252}\relax} % Logical Possibility + \newcommand \LogNext {\lgx{E253}\relax} % Logical Next + \newcommand \LogFutr {\lgx{E254}\relax} % Logical Future + \newcommand \LogPast {\lgx{E255}\relax} % Logical Past + \newcommand \LogCont {\lgx{E256}\relax} % Logical Contingency + \newcommand \LogNonCont {\lgx{E257}\relax} % Logical Non-contingency + + \newcommand \DoxNec {\lgx{E260}\relax} % Doxastic Necessity + \newcommand \DoxPos {\lgx{E262}\relax} % Doxastic Possibility + \newcommand \DoxNext {\lgx{E263}\relax} % Doxastic Next + \newcommand \DoxFutr {\lgx{E264}\relax} % Doxastic Future + \newcommand \DoxPast {\lgx{E265}\relax} % Doxastic Past + \newcommand \DoxCont {\lgx{E266}\relax} % Doxastic Contingency + \newcommand \DoxNonCont {\lgx{E267}\relax} % Doxastic Non-contingency + + \newcommand \TmpNec {\lgx{E270}\relax} % Temporal Necessity + \newcommand \TmpPos {\lgx{E272}\relax} % Temporal Possibility + \newcommand \TmpNext {\lgx{E273}\relax} % Temporal Next + \newcommand \TmpFutr {\lgx{E274}\relax} % Temporal Future + \newcommand \TmpPast {\lgx{E275}\relax} % Temporal Past + \newcommand \TmpCont {\lgx{E276}\relax} % Temporal Contingency + \newcommand \TmpNonCont {\lgx{E277}\relax} % Temporal Non-contingency \newcommand \Of {\lgx{E600}\relax} % Bunch Inclusion \newcommand \In {\lgx{E602}\relax} % Set Membership \newcommand \NotIn {\lgx{E603}\relax} % Set Membership Negated + \newcommand \Cover {\lgx{E94D}\relax} % Cover - \newcommand \EmptyBunch {\lgx{E054}\relax} % Empty Bunch - \newcommand \NullSet {\lgx{E053}\relax} % Null Set + \newcommand \VoidBunch {\lgx{E054}\relax} % Absent / Void Bunch + \newcommand \NullSet {\lgx{E053}\relax} % Empty / Null Set \newcommand \BnchMeet {\lgx{E710}\relax} % Bunch Meet \newcommand \BnchJoin {\lgx{E711}\relax} % Bunch Join @@ -739,6 +862,9 @@ \newcommand \MapMeet {\lgx{E760}\relax} % Map Meet \newcommand \MapJoin {\lgx{E761}\relax} % Map Join + \newcommand \VeeMeet {\lgx{EAF6}\relax} % V Meet + \newcommand \VeeJoin {\lgx{EAF7}\relax} % V Join + \newcommand \StrctSbmap {\lgx{E768}\relax} % Strict Submap \newcommand \NotStrctSbmap {\lgx{E769}\relax} % Strict Submap Negated \newcommand \Sbmap {\lgx{E76A}\relax} % Submap @@ -773,6 +899,16 @@ \newcommand \NotGr {\lgx{E6AF}\relax} % Not Greater Than \newcommand \NotGre {\lgx{E6AD}\relax} % Not Greater Than or Equal + \newcommand \SbLs {\lgx{E688}\relax} % Slanted Bar Less Than + \newcommand \SbLse {\lgx{E68A}\relax} % Slanted Bar Less Than or Equal + \newcommand \SbGr {\lgx{E68E}\relax} % Slanted Bar Greater Than + \newcommand \SbGre {\lgx{E68C}\relax} % Slanted Bar Greater Than or Equal + + \newcommand \SbNotLs {\lgx{E689}\relax} % Slanted Bar Not Less Than + \newcommand \SbNotLse {\lgx{E68B}\relax} % Slanted Bar Not Less Than or Equal + \newcommand \SbNotGr {\lgx{E68F}\relax} % Slanted Bar Not Greater Than + \newcommand \SbNotGre {\lgx{E68D}\relax} % Slanted Bar Not Greater Than or Equal + \newcommand \Pre {\lgx{E6C8}\relax} % Precedes \newcommand \Preq {\lgx{E6CA}\relax} % Precedes or Equal \newcommand \Suc {\lgx{E6CE}\relax} % Succeeds @@ -788,7 +924,7 @@ \newcommand \PlusMinus {\lgx{E0CE}\relax} % Plus / Minus \newcommand \MinusPlus {\lgx{E0CF}\relax} % Minus / Plus \newcommand \Asterick {\lgx{E0C4}\relax} % Asterick - \newcommand \Divide {\lgx{E103}\relax} % Divide + \newcommand \Divide {\lgx{E102}\relax} % Divide \newcommand \Times {\lgx{E0C5}\relax} % Times \newcommand \Append {\lgx{E0CB}\relax} % Append @@ -972,8 +1108,8 @@ \defineDelimiter{ClsCeil} {EEF0} \defineDelimiter{OpnFloor} {EF00} \defineDelimiter{ClsFloor} {EF10} - \defineDelimiter{OpnForce} {EF20} - \defineDelimiter{ClsForce} {EF30} + \defineDelimiter{OpnTurn} {EF20} + \defineDelimiter{ClsTurn} {EF30} \defineDelimiter{OpnBar} {EF40} \defineDelimiter{ClsBar} {EF50} \defineDelimiter{BndBar} {EF60} @@ -1200,11 +1336,11 @@ \newcommand \ClsFloorBtm {\lgx{EF1C}} % ClsFloor bottom \newcommand \ClsFloorExt {\lgx{EF1D}} % ClsFloor extender - \newcommand \OpnForceMid {\lgx{EF2C}} % OpnForce middle - \newcommand \OpnForceExt {\lgx{EF2D}} % OpnForce extender + \newcommand \OpnTurnMid {\lgx{EF2C}} % OpnTurn middle + \newcommand \OpnTurnExt {\lgx{EF2D}} % OpnTurn extender - \newcommand \ClsForceMid {\lgx{EF3C}} % ClsForce middle - \newcommand \ClsForceExt {\lgx{EF3D}} % ClsForce extender + \newcommand \ClsTurnMid {\lgx{EF3C}} % ClsTurn middle + \newcommand \ClsTurnExt {\lgx{EF3D}} % ClsTurn extender \newcommand \OpnBarBtm {\lgx{EF4C}} % OpnBar bottom \newcommand \OpnBarExt {\lgx{EF4D}} % OpnBar extender @@ -1569,70 +1705,70 @@ \newcommand \KntBSQNF {\lgf{E21E}} % Bottom solid forth line, half height \newcommand \KntLSQNF {\lgq{E21F}} % Left solid forth line, half width - \newcommand \Kntzero {\lgv{EFB0}} % Monospace raised italic, serif font: digit 0 - \newcommand \Kntone {\lgv{EFB1}} % Monospace raised italic, serif font: digit 1 - \newcommand \Knttwo {\lgv{EFB2}} % Monospace raised italic, serif font: digit 2 - \newcommand \Kntthree {\lgv{EFB3}} % Monospace raised italic, serif font: digit 3 - \newcommand \Kntfour {\lgv{EFB4}} % Monospace raised italic, serif font: digit 4 - \newcommand \Kntfive {\lgv{EFB5}} % Monospace raised italic, serif font: digit 5 - \newcommand \Kntsix {\lgv{EFB6}} % Monospace raised italic, serif font: digit 6 - \newcommand \Kntseven {\lgv{EFB7}} % Monospace raised italic, serif font: digit 7 - \newcommand \Knteight {\lgv{EFB8}} % Monospace raised italic, serif font: digit 8 - \newcommand \Kntnine {\lgv{EFB9}} % Monospace raised italic, serif font: digit 9 - - \newcommand \KntA {\lgv{EFC1}} % Monospace raised italic, serif font: letter A - \newcommand \KntB {\lgv{EFC2}} % Monospace raised italic, serif font: letter B - \newcommand \KntC {\lgv{EFC3}} % Monospace raised italic, serif font: letter C - \newcommand \KntD {\lgv{EFC4}} % Monospace raised italic, serif font: letter D - \newcommand \KntE {\lgv{EFC5}} % Monospace raised italic, serif font: letter E - \newcommand \KntF {\lgv{EFC6}} % Monospace raised italic, serif font: letter F - \newcommand \KntG {\lgv{EFC7}} % Monospace raised italic, serif font: letter G - \newcommand \KntH {\lgv{EFC8}} % Monospace raised italic, serif font: letter H - \newcommand \KntI {\lgv{EFC9}} % Monospace raised italic, serif font: letter I - \newcommand \KntJ {\lgv{EFCA}} % Monospace raised italic, serif font: letter J - \newcommand \KntK {\lgv{EFCB}} % Monospace raised italic, serif font: letter K - \newcommand \KntL {\lgv{EFCC}} % Monospace raised italic, serif font: letter L - \newcommand \KntM {\lgv{EFCD}} % Monospace raised italic, serif font: letter M - \newcommand \KntN {\lgv{EFCE}} % Monospace raised italic, serif font: letter N - \newcommand \KntO {\lgv{EFCF}} % Monospace raised italic, serif font: letter O - \newcommand \KntP {\lgv{EFD0}} % Monospace raised italic, serif font: letter P - \newcommand \KntQ {\lgv{EFD1}} % Monospace raised italic, serif font: letter Q - \newcommand \KntR {\lgv{EFD2}} % Monospace raised italic, serif font: letter R - \newcommand \KntS {\lgv{EFD3}} % Monospace raised italic, serif font: letter S - \newcommand \KntT {\lgv{EFD4}} % Monospace raised italic, serif font: letter T - \newcommand \KntU {\lgv{EFD5}} % Monospace raised italic, serif font: letter U - \newcommand \KntV {\lgv{EFD6}} % Monospace raised italic, serif font: letter V - \newcommand \KntW {\lgv{EFD7}} % Monospace raised italic, serif font: letter W - \newcommand \KntX {\lgv{EFD8}} % Monospace raised italic, serif font: letter X - \newcommand \KntY {\lgv{EFD9}} % Monospace raised italic, serif font: letter Y - \newcommand \KntZ {\lgv{EFDA}} % Monospace raised italic, serif font: letter Z - - \newcommand \Knta {\lgv{EFE1}} % Monospace raised italic, serif font: letter a - \newcommand \Kntb {\lgv{EFE2}} % Monospace raised italic, serif font: letter b - \newcommand \Kntc {\lgv{EFE3}} % Monospace raised italic, serif font: letter c - \newcommand \Kntd {\lgv{EFE4}} % Monospace raised italic, serif font: letter d - \newcommand \Knte {\lgv{EFE5}} % Monospace raised italic, serif font: letter e - \newcommand \Kntf {\lgv{EFE6}} % Monospace raised italic, serif font: letter f - \newcommand \Kntg {\lgv{EFE7}} % Monospace raised italic, serif font: letter g - \newcommand \Knth {\lgv{EFE8}} % Monospace raised italic, serif font: letter h - \newcommand \Knti {\lgv{EFE9}} % Monospace raised italic, serif font: letter i - \newcommand \Kntj {\lgv{EFEA}} % Monospace raised italic, serif font: letter j - \newcommand \Kntk {\lgv{EFEB}} % Monospace raised italic, serif font: letter k - \newcommand \Kntl {\lgv{EFEC}} % Monospace raised italic, serif font: letter l - \newcommand \Kntm {\lgv{EFED}} % Monospace raised italic, serif font: letter m - \newcommand \Kntn {\lgv{EFEE}} % Monospace raised italic, serif font: letter n - \newcommand \Knto {\lgv{EFEF}} % Monospace raised italic, serif font: letter o - \newcommand \Kntp {\lgv{EFF0}} % Monospace raised italic, serif font: letter p - \newcommand \Kntq {\lgv{EFF1}} % Monospace raised italic, serif font: letter q - \newcommand \Kntr {\lgv{EFF2}} % Monospace raised italic, serif font: letter r - \newcommand \Knts {\lgv{EFF3}} % Monospace raised italic, serif font: letter s - \newcommand \Kntt {\lgv{EFF4}} % Monospace raised italic, serif font: letter t - \newcommand \Kntu {\lgv{EFF5}} % Monospace raised italic, serif font: letter u - \newcommand \Kntv {\lgv{EFF6}} % Monospace raised italic, serif font: letter v - \newcommand \Kntw {\lgv{EFF7}} % Monospace raised italic, serif font: letter w - \newcommand \Kntx {\lgv{EFF8}} % Monospace raised italic, serif font: letter x - \newcommand \Knty {\lgv{EFF9}} % Monospace raised italic, serif font: letter y - \newcommand \Kntz {\lgv{EFFA}} % Monospace raised italic, serif font: letter z + \newcommand \Kntzero {\lgv{EFB0}} % Monospace raised, italic, serif font: digit 0 + \newcommand \Kntone {\lgv{EFB1}} % Monospace raised, italic, serif font: digit 1 + \newcommand \Knttwo {\lgv{EFB2}} % Monospace raised, italic, serif font: digit 2 + \newcommand \Kntthree {\lgv{EFB3}} % Monospace raised, italic, serif font: digit 3 + \newcommand \Kntfour {\lgv{EFB4}} % Monospace raised, italic, serif font: digit 4 + \newcommand \Kntfive {\lgv{EFB5}} % Monospace raised, italic, serif font: digit 5 + \newcommand \Kntsix {\lgv{EFB6}} % Monospace raised, italic, serif font: digit 6 + \newcommand \Kntseven {\lgv{EFB7}} % Monospace raised, italic, serif font: digit 7 + \newcommand \Knteight {\lgv{EFB8}} % Monospace raised, italic, serif font: digit 8 + \newcommand \Kntnine {\lgv{EFB9}} % Monospace raised, italic, serif font: digit 9 + + \newcommand \KntA {\lgv{EFC1}} % Monospace raised, italic, serif font: letter A + \newcommand \KntB {\lgv{EFC2}} % Monospace raised, italic, serif font: letter B + \newcommand \KntC {\lgv{EFC3}} % Monospace raised, italic, serif font: letter C + \newcommand \KntD {\lgv{EFC4}} % Monospace raised, italic, serif font: letter D + \newcommand \KntE {\lgv{EFC5}} % Monospace raised, italic, serif font: letter E + \newcommand \KntF {\lgv{EFC6}} % Monospace raised, italic, serif font: letter F + \newcommand \KntG {\lgv{EFC7}} % Monospace raised, italic, serif font: letter G + \newcommand \KntH {\lgv{EFC8}} % Monospace raised, italic, serif font: letter H + \newcommand \KntI {\lgv{EFC9}} % Monospace raised, italic, serif font: letter I + \newcommand \KntJ {\lgv{EFCA}} % Monospace raised, italic, serif font: letter J + \newcommand \KntK {\lgv{EFCB}} % Monospace raised, italic, serif font: letter K + \newcommand \KntL {\lgv{EFCC}} % Monospace raised, italic, serif font: letter L + \newcommand \KntM {\lgv{EFCD}} % Monospace raised, italic, serif font: letter M + \newcommand \KntN {\lgv{EFCE}} % Monospace raised, italic, serif font: letter N + \newcommand \KntO {\lgv{EFCF}} % Monospace raised, italic, serif font: letter O + \newcommand \KntP {\lgv{EFD0}} % Monospace raised, italic, serif font: letter P + \newcommand \KntQ {\lgv{EFD1}} % Monospace raised, italic, serif font: letter Q + \newcommand \KntR {\lgv{EFD2}} % Monospace raised, italic, serif font: letter R + \newcommand \KntS {\lgv{EFD3}} % Monospace raised, italic, serif font: letter S + \newcommand \KntT {\lgv{EFD4}} % Monospace raised, italic, serif font: letter T + \newcommand \KntU {\lgv{EFD5}} % Monospace raised, italic, serif font: letter U + \newcommand \KntV {\lgv{EFD6}} % Monospace raised, italic, serif font: letter V + \newcommand \KntW {\lgv{EFD7}} % Monospace raised, italic, serif font: letter W + \newcommand \KntX {\lgv{EFD8}} % Monospace raised, italic, serif font: letter X + \newcommand \KntY {\lgv{EFD9}} % Monospace raised, italic, serif font: letter Y + \newcommand \KntZ {\lgv{EFDA}} % Monospace raised, italic, serif font: letter Z + + \newcommand \Knta {\lgv{EFE1}} % Monospace raised, italic, serif font: letter a + \newcommand \Kntb {\lgv{EFE2}} % Monospace raised, italic, serif font: letter b + \newcommand \Kntc {\lgv{EFE3}} % Monospace raised, italic, serif font: letter c + \newcommand \Kntd {\lgv{EFE4}} % Monospace raised, italic, serif font: letter d + \newcommand \Knte {\lgv{EFE5}} % Monospace raised, italic, serif font: letter e + \newcommand \Kntf {\lgv{EFE6}} % Monospace raised, italic, serif font: letter f + \newcommand \Kntg {\lgv{EFE7}} % Monospace raised, italic, serif font: letter g + \newcommand \Knth {\lgv{EFE8}} % Monospace raised, italic, serif font: letter h + \newcommand \Knti {\lgv{EFE9}} % Monospace raised, italic, serif font: letter i + \newcommand \Kntj {\lgv{EFEA}} % Monospace raised, italic, serif font: letter j + \newcommand \Kntk {\lgv{EFEB}} % Monospace raised, italic, serif font: letter k + \newcommand \Kntl {\lgv{EFEC}} % Monospace raised, italic, serif font: letter l + \newcommand \Kntm {\lgv{EFED}} % Monospace raised, italic, serif font: letter m + \newcommand \Kntn {\lgv{EFEE}} % Monospace raised, italic, serif font: letter n + \newcommand \Knto {\lgv{EFEF}} % Monospace raised, italic, serif font: letter o + \newcommand \Kntp {\lgv{EFF0}} % Monospace raised, italic, serif font: letter p + \newcommand \Kntq {\lgv{EFF1}} % Monospace raised, italic, serif font: letter q + \newcommand \Kntr {\lgv{EFF2}} % Monospace raised, italic, serif font: letter r + \newcommand \Knts {\lgv{EFF3}} % Monospace raised, italic, serif font: letter s + \newcommand \Kntt {\lgv{EFF4}} % Monospace raised, italic, serif font: letter t + \newcommand \Kntu {\lgv{EFF5}} % Monospace raised, italic, serif font: letter u + \newcommand \Kntv {\lgv{EFF6}} % Monospace raised, italic, serif font: letter v + \newcommand \Kntw {\lgv{EFF7}} % Monospace raised, italic, serif font: letter w + \newcommand \Kntx {\lgv{EFF8}} % Monospace raised, italic, serif font: letter x + \newcommand \Knty {\lgv{EFF9}} % Monospace raised, italic, serif font: letter y + \newcommand \Kntz {\lgv{EFFA}} % Monospace raised, italic, serif font: letter z % - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - |