mirror of https://github.com/texmacs/doc.git
98 lines
6.1 KiB
Tcl
98 lines
6.1 KiB
Tcl
<TeXmacs|1.99.2>
|
|
|
|
<style|<tuple|tmdoc|english>>
|
|
|
|
<\body>
|
|
<tmdoc-title|Semantics of mathematical symbols>
|
|
|
|
The mathematical symbols in <TeXmacs> all come with a certain number of
|
|
properties which correspond to their intended meaning. For instance,
|
|
<TeXmacs> is aware that <math|<op|+>> is an infix operator, whereas ! is
|
|
rather a postfix, and , a separator.
|
|
|
|
<TeXmacs> has special symbols <math|\<mathe\>=2.71828\<cdots\>>,
|
|
<math|\<mathpi\>=3.14159\<cdots\>> and <math|\<mathi\>> for important
|
|
mathematical constants, which display differently from the mere characters
|
|
<math|e>, <math|\<pi\>> and <math|i>, and which can be entered using the
|
|
shortcuts <shortcut|\<mathe\>>, <shortcut|\<mathpi\>> and
|
|
<shortcut|\<mathi\>>. We recommend to systematically use these shortcuts.
|
|
|
|
Inversely, semantically distinct symbols may display in a similar way. For
|
|
instance, the comma separator, as in <math|f<around|(|x,y|)>>, is different
|
|
from the decimal comma, as in <math|3\<comma\>14159\<cdots\>>. Notice that
|
|
the two symbols admit different spacing rules. Semantically distinct
|
|
symbols which are rendered by the same glyph are called <em|homoglyphs>.
|
|
Notice that our semantics is purely syntactic: for instance,
|
|
the<nbsp><math|+> infix is commonly used for addition, but sometimes also
|
|
for the concatenation of strings. Nevertheless, these two uses do not
|
|
differ from a syntactical point of view, since the<nbsp><math|+> symbol
|
|
remains a binary infix with the same precedence with respect to other
|
|
symbols.
|
|
|
|
The most confusing homoglyphs are the various invisible symbols supported
|
|
by <TeXmacs>:
|
|
|
|
<\itemize>
|
|
<item>The multiplication, entered by <key|*>. Example: <math|a*b>.
|
|
|
|
<item>Function application, entered by <key|space>. Example: <math|sin
|
|
x>.
|
|
|
|
<item>An invisible separator, entered by <shortcut|\<nocomma\>>. Example:
|
|
the matrix <math|A=<around|(|a<rsub|i\<nocomma\>j>|)>>.
|
|
|
|
<item>An invisible addition, entered by <shortcut|\<noplus\>>. Example:
|
|
<math|17\<noplus\><frac*|3|8>>.
|
|
|
|
<item>An invisible symbol, entered by <shortcut|\<nosymbol\>>. Example:
|
|
the increment <math|\<nosymbol\>+1>.
|
|
|
|
<item><label|nobracket>An invisible bracket (mainly for internal use). A
|
|
matching pair of invisible brackets is entered using <key|( var>.
|
|
</itemize>
|
|
|
|
Again it is recommended that authors carefully enter these various
|
|
invisible symbols when appropriate. It is particularly important to
|
|
distinguish between multiplication and function application, since there is
|
|
no 100% safe automatic way to make this distinction (we already mentioned
|
|
the formulas <math|a<around|(|b+c|)>> and <math|f<around|(|x+y|)>> before).
|
|
|
|
<TeXmacs> supports two quite general schemes for entering homoglyphs. On
|
|
the one hand, we often rely on the standard variant system. For instance,
|
|
<math|\<times\>> and <math|\<ast\>> are obtained using <shortcut|\<times\>>
|
|
and <shortcut|\<ast\>>. In table<nbsp><reference|homoglyph-table> we have
|
|
given the complete list of homoglyphs supported by <TeXmacs>.
|
|
|
|
<big-table|<block|<tformat|<table|<row|<cell|Shortcut>|<cell|Glyph>|<cell|Example>|<cell|Semantics>>|<row|<cell|<key|*>>|<cell|>|<cell|<math|a*b>>|<cell|Multiplication>>|<row|<cell|<key|space>>|<cell|>|<cell|<math|sin
|
|
x>>|<cell|Function application>>|<row|<cell|<shortcut|\<nocomma\>>>|<cell|>|<cell|<math|a<rsub|i\<nocomma\>j>=a<rsub|j\<nocomma\>i>>>|<cell|Invisible
|
|
separator>>|<row|<cell|<shortcut|\<noplus\>>>|<cell|>|<cell|<with|mode|math|17\<noplus\><frac*|3|8>>>|<cell|Invisible
|
|
addition>>|<row|<cell|<shortcut|\<nosymbol\>>>|<cell|>|<cell|<math|\<nosymbol\>+1>>|<cell|Invisible
|
|
symbol>>|<row|<cell|<key|( var>>|<cell|>|<cell|<math|\<Phi\>\<equiv\><around*|\<nobracket\>|\<forall\>x,P<around*|(|x|)>|\<nobracket\>>>>|<cell|Invisible
|
|
bracket(s)>>|<row|<cell|<key|\|>>|<cell|<math|\|>>|<cell|<math|<around*|\||-x|\|>=<around*|\||x|\|>>>|<cell|Absolute
|
|
value>>|<row|<cell|<key|\| var>>|<cell|<math|\|>>|<cell|<math|<around*|{|x\<in\>\<bbb-R\>\|x\<gtr\>0|}>>>|<cell|Separating
|
|
bar>>|<row|<cell|<key|\| var var>>|<cell|<math|\|>>|<cell|<math|<around*|\<langle\>|a<rsub|i><rsup|2><mid|\|>a<rsub|j><rsup|2>|\<rangle\>>>>|<cell|Extensible
|
|
middle bar>>|<row|<cell|<key|\| var var var
|
|
var>>|<cell|<math|\|>>|<cell|<math|11\<divides\>1001>>|<cell|Divides
|
|
relation>>|<row|<cell|<key|,>>|<cell|,>|<cell|<math|f<around*|(|x,y|)>>>|<cell|Comma
|
|
separator>>|<row|<cell|<key|, var>>|<cell|,>|<cell|<math|123\<comma\>456>>|<cell|Decimal
|
|
comma>>|<row|<cell|<key|.>>|<cell|.>|<cell|<math|123.456>>|<cell|Decimal
|
|
point>>|<row|<cell|<key|. var>>|<cell|.>|<cell|<math|\<mathlambda\>x\<point\>x<rsup|2>>>|<cell|Dot
|
|
connector>>|<row|<cell|<key|* var var var>>|<cell|<math|\<cdot\>>>|<cell|<math|\<b-v\>\<cdot\>\<b-w\>>>|<cell|Dot
|
|
multiplication>>|<row|<cell|<key|. var var>>|<cell|<math|\<cdummy\>>>|<cell|<math|\<cdummy\>+1>>|<cell|Dummy
|
|
widcard>>|<row|<cell|<key|:>>|<cell|<math|:>>|<cell|<math|<around*|{|x\<in\>E:P<around*|(|x|)>|}>>>|<cell|Separator>>|<row|<cell|<shortcut|\<of\>>>|<cell|<math|\<of\>>>|<cell|<math|x\<of\><math-ss|Int>>>|<cell|Type
|
|
satisfaction>>|<row|<cell|<shortcut|\<over\>>>|<cell|<math|\<over\>>>|<cell|<math|121\<over\>11=11>>|<cell|Division>>|<row|<cell|<key|\\
|
|
var>>|<cell|<math|\\>>|<cell|<math|\\x>>|<cell|Backslash>>|<row|<cell|<key|\\
|
|
var var>>|<cell|<math|\\>>|<cell|<math|\<bbb-N\><rsup|\<gtr\>>=\<bbb-N\>\<setminus\><around*|{|0|}>>>|<cell|Set
|
|
minus>>|<row|<cell|<key|&>>|<cell|<math|\<wedge\>>>|<cell|<math|1=1\<wedge\>2=2>>|<cell|Logical
|
|
and>>|<row|<cell|<key|* &>>|<cell|<math|\<exterior\>>>|<cell|<math|\<mathd\>x\<exterior\>\<mathd\>y>>|<cell|Wedge
|
|
product>>>>>|<label|homoglyph-table>Homoglyphs supported by <TeXmacs>.>
|
|
|
|
<tmdoc-copyright|2010|Joris van der Hoeven>
|
|
|
|
<tmdoc-license|Permission is granted to copy, distribute and/or modify this
|
|
document under the terms of the GNU Free Documentation License, Version 1.1
|
|
or any later version published by the Free Software Foundation; with no
|
|
Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
|
|
Texts. A copy of the license is included in the section entitled "GNU Free
|
|
Documentation License".>
|
|
</body> |