Come si scrivono le formule: ASCIIMathML e TeX

_admin
N.B. Se non hai tempo o voglia di leggere tutto quanto, prova semplicemente a racchiudere le tue formule tra due simbolo di dollaro.

Ad esempio, invece di
2/3 + 4/7 = 11/9
scrivi
$ 2/3 + 4/7 = 11/9 $
e otterrai $ 2/3 + 4/7 = 11/9 $. Con le formule scritte in questo modo avrai sicuramente più possibilità che qualcuno ti aiuti.


Per formule più complesse, puoi anche aiutarti con l'apposito strumento che trovi sotto "Aggiungi Formula" nell'editor del messaggio e il cui utilizzo è illustrato nel seguente video:


[yti]http://youtu.be/dauFz_AElMk[/yti]

In questo forum, e nel sito, si può utilizzare sia ASCIIMath che TeX per scrivere le formule.

--- TeX ---
Per usare TeX, è sufficiente scrivere la formula usando la sintassi TeX e poi includerla dentro tex e /tex (circondati da parentesi quadre). Esempio: [tex]x^2[/tex].
Non diamo qui particolari istruzioni, assumendo che questa opportunità venga utilizzata da chi già conosce TeX (o LaTeX). In rete sono disponibili molti ottimi manuali per questo diffusissimo linguaggio di scrittura.
Segnaliamo solo:
- C'è la possibilità di visualizzare l'elenco di tutti i simboli del pacchetto amsmath premendo F1 (SHIFT + F1 per chi usa il browser Opera) durante la scrittura dei messaggi
- E' abilitato il pacchetto XY-pic

***

Dal luglio 2011 abbiamo installato MathJax, che consente di usare il TeX senza l'ausilio dei tag [tex].

Per inserire una formula "in corpo" (ossia nel corpo del testo) come questa \( \int_a^b x^2\ \text{d} x =\frac{1}{3}\ x^3|_a^b \) basta racchiudere i comandi TeX entro parentesi tonde "slashate": ad esempio il codice usato per la formula precedente è:
\( \int_a^b x^2\ \text{d} x =\frac{1}{3}\ x^3|_a^b \)

Per inserire formule "fuori corpo" (ossia su una riga nuova) come questa:
\[ \int_a^b x^2\ \text{d} x =\frac{1}{3}\ x^3\Bigg|_a^b \]
basta inserire i comandi TeX tra parentesi quadre "slashate": ad esempio, la formula precedente è stata ottenuta con:
\[ \int_a^b x^2\ \text{d} x ==\frac{1}{3}\ x^3 \Bigg|_a^b \]

Si noti che i simboli "grandi" (e.g., gli integrali e le frazioni) vengono automaticamente mostrati alle dimensioni giuste quando si scrive una formula "in corpo".

--- ASCIIMath ---
Qui di sotto le istruzioni per ASCIIMath.

Come appare: $x_{1,2} = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$ come devi scrivere:
$x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}$
.

Non vedi bene la formula?
Se usi Internet Explorer e non vedi bene carica il MathPlayer
http://www.dessci.com/en/products/mathp ... wnload.htm
Se usi Firefox e non vedi bene installa i font giusti
http://web.mit.edu/atticus/www/mathml/m ... .0-fc1.msi

Come funziona?
Sul nostro server c'è un componente javascript che traduce il codice che voi scrivete (un linguaggio simile al LaTex e racchiuso tra i simboli
$ e $
) in MathML che è lo standard del W3C per scrivere formule matematiche nelle pagine Web.

Aritmetica e algebra
$3*x$ ..........
$3*x$
.......... $5xx3$ ..........
$5xx3$
oppure
$5 \times 3$

$5^2$ ..........
$5^2$

$8-:2$ ..........
$8-:2$

$a^{m+n}$ ..........
$a^{m+n}$

$5*x^3-2*x^2+x-1=0$ ..........
$5*x^3-2*x^2+x-1=0$

$3/2+2/3$ ..........
$3/2+2/3$
oppure
$\frac{3}{2}+\frac{2}{3}$

$(3/2-1)/(5/7+2/3)$ ..........
$(3/2-1)/(5/7+2/3)$

$sqrt(5)$ ..........
$sqrt(5)$

$root(3)(8)=2$ ..........
$root(3)(8)=2$

$sqrt(root(3)(root(4)(5x-1)))$ ..........
$sqrt(root(3)(root(4)(5x-1)))$

$1/3-sqrt(2)$ ..........
$1/3-sqrt(2)$
invece $1/(3-sqrt(2))$ ..........
$1/(3-sqrt(2))$

$\frac{2}{3}x^2-\sqrt{x}+\frac{3}{\sqrt{x}}=0$ ..........
$\frac{2}{3}x^2-\sqrt{x}+\frac{3}{\sqrt{x}}=0$

$(x^2-1)/(x^2+1)$ ..........
$(x^2-1)/(x^2+1)$

$\sum_{k=1}^N k^2$ ..........
$\sum_{k=1}^N k^2$

$\prod_{i=1}^N x_i$ ..........
$\prod_{i=1}^N x_i$

$\{(2x + y + 3z = 12),(4y - z = -7),(5x + 8z = 34):}$ ..........
$\{(2x + y + 3z = 12),(4y - z = -7),(5x + 8z = 34):}$

$uuu_{i in I} A_i^c $ ..........
$uuu_{i in I} A_i^c$


Analisi
$(a,b]={x in RR : a
$(a,b]={x in RR : a
$f: (a,b) \to RR$ ..........
$f: (a,b) \to RR$

$ x/x={(1,if x!=0),(text{non definito},if x=0):}$ ..........
$x/x={(1,if x!=0),(text{non definito},if x=0):}$

$\lim_{n \to \infty}x_n$ ..........
$\lim_{n \to \infty}x_n$

$lim_(h->0)(f(x+h)-f(x))/h$ ..........
$lim_(h->0)(f(x+h)-f(x))/h$

$\int_{-2\pi}^{2\pi} f(x) dx$ ..........
$\int_{-2\pi}^{2\pi} f(x) dx$

$\int_0^1f(x)dx$ ..........
$\int_0^1f(x)dx$

$(delz)/(delx)$ ..........
$(delz)/(delx)$

$f(x)=\sum_{n=0}^\infty\frac{f^{(n)}(a)}{n!}(x-a)^n$ ..........
$f(x)=\sum_{n=0}^\infty\frac{f^{(n)}(a)}{n!}(x-a)^n$

$\frac{}{\partial x}\partial f(x_0) = D_{x} f(x_0)$ ..........
$\frac{}{\partial x}\partial f(x_0) = D_{x} f(x_0)$

$\int int y^2x dxdy$ ..........
$\int int y^2x dxdy$


Accenti e formati
$a^2$ ......... apice .........
$a^2$

$a_5$ ......... pedice .........
$a_5$

$a_{i,j}$ ......... matrice ..........
$a_{i,j}$

$x_2^3$ ..........
$x_2^3$

$\hat a$ ..........
$\hat a$

$\bar b$ ..........
$\bar b$

$\vec c$ ......... vettore ..........
$\vec c$

$dot x$ ..........
$dot x$

$ddot x$ ..........
$ddot x$

$A\hat BC$ .......... angolo ..........
$A\hat BC$

$\hat{A B C}$ ..........
$\hat{A B C}$

$\bar{AB}$ .......... lunghezza segmento ..........
$\bar{AB}$


Alfabeto greco e altri caratteri
$\alpha$ ..........
$\alpha$

$\beta$ ..........
$\beta$

$\gamma$ ..........
$\gamma$
.......... $\Gamma$ ..........
$\Gamma$

$\delta$ ..........
$\delta$
.......... $\Delta$ ..........
$\Delta$

$\epsilon$ ..........
$\epsilon$

$\zeta$ ...........
$\zeta$

$\eta$ ..........
$\eta$

$\theta$ ..........
$\theta$
.......... $\Theta$ ..........
$\Theta$

$\lambda$ ..........
$\lambda$
.......... $\Lambda$ ..........
$\Lambda$

$\mu$ ..........
$\mu$

$\nu$ ..........
$\nu$

$\xi$ ..........
$\xi$

$\pi$ ..........
$\pi$
.......... $\Pi$ ..........
$\Pi$

$\rho$ ..........
$\rho$

$\sigma$ ..........
$\sigma$
.......... $\Sigma$ ..........
$\Sigma$

$\tau$ ..........
$\tau$

$\upsilon$ ........
$\upsilon$

$\phi$ ..........
$\phi$
.......... $\Phi$ ..........
$\Phi$

$\chi$ ..........
$\chi$

$\psi$ ..........
$\psi$
.......... $\Psi$ ..........
$\Psi$

$\omega$ ...........
$\omega$
.......... $\Omega$ ...........
$\Omega$

$\vartheta$ ..........
$\vartheta$

$\varphi$ ..........
$\varphi$

$NN$ ..........
$NN$

$ZZ$ ..........
$ZZ$

$QQ$ ..........
$QQ$

$RR$ ..........
$RR$

$CC$ ..........
$CC$

$\aleph$ ..........
$\aleph$

$15^\circ 12' 38''$ ..............
$15^\circ 12' 38''$

$\bot$ ..........
$\bot$

$\infty$ ..........
$\infty$
oppure
$oo$

$\nabla$ ..........
$\nabla$
oppure
$\grad$

$\partial$ ..........
$\partial$

$\neg$ ..........
$\neg$

$\sim$ ..........
$\sim$

$vv$ ..........
$vv$
.......... $vvv$ ..........
$vvv$

$^^$ ..........
$^^$
.......... $^^^$ ..........
$^^^$

$uu$ ..........
$uu$
.......... $uuu$ .........
$uuu$

$nn$ ..........
$nn$
.......... $nnn$ .........
$nnn$

$+-$ ..........
$+-$
oppure
$\pm$


frecce
$\leftarrow$ ..........
$\leftarrow$
oppure
$larr$

$\Leftarrow$ ..........
$\Leftarrow$
oppure
$lArr$

$\rightarrow$ ..........
$\rightarrow$
oppure
$rarr$

$\Rightarrow$ ..........
$\Rightarrow$
oppure
$rArr$

$\uparrow$ ..........
$\uparrow$
oppure
$uarr$

$\leftrightarrow$ ...........
$\leftrightarrow$
oppure
$harr$

$\Leftrightarrow$ ..........
$\Leftrightarrow$
oppure
$hArr$

$\to$ ..........
$\to$
oppure
$->$



Matrici
$((a,b),(c,d))$ ..........
$((a,b),(c,d))$

$((1,2,3),(4,5,6),(7,8,9))$ ..........
$((1,2,3),(4,5,6),(7,8,9))$

$|(a,b),(c,d)|$ ..........
$|(a,b),(c,d)|$

$((1,0),(1,-2))^2$ ..........
$((1,0),(1,-2))^2$

$[[1,2],[-2,3]]$ ..........
$[[1,2],[-2,3]]$


Simboli relazionali
$!=$..........
$!=$
oppure $\ne$
$<=$ ..........
$<=$

$>=$ ..........
$>=$

$-<$ ..........
$-<$

$>-$ ..........
$>-$

$in$ ..........
$in$

$notin$ ..........
$notin$

$sub$ ...........
$sub$

$sup$ ..........
$sup$

$sube$ .........
$sube$

$supe$ ..........
$supe$

$-=$ .........
$-=$

$~=$ ..........
$~=$

$~~$ ..........
$~~$

$prop$ ...........
$prop$


Simboli logici
$not$ ..........
$not$

$=>$ ..........
$=>$

$if$ ..........
$if$

$iff$ ..........
$iff$

$AA$ ..........
$AA$

$EE$ ..........
$EE$

$\nexists$ ..........
$\nexists$


Vuoi esercitarti?
http://www.wjagray.co.uk/maths/ASCIIMathTutorial.html

Ne vuoi sapere di più?
ASCIIMAthML home page
http://www1.chapman.edu/~jipsen/mathml/asciimath.html

Ma lo vuoi sul tuo forum?
http://sourceforge.net/projects/asciimathml/
https://www.matematicamente.it/forum/vie ... php?t=8496

Ringraziamenti
Bags è stato il primo a installare questo componente
https://www.matematicamente.it/forum/mat ... t6289.html
Fireball ha dato un grande contributo per lo sviluppo di tutto il forum
Iteuler ha scritto per primo una bella guida
https://www.matematicamente.it/forum/pos ... tml#p42599
Stan ha aggiornato e integrato AsciMathML
Tantissimi hanno contributo nel darsi domande e risposte su come si scrivono le formule.
Questa guida è la sintesi di tutto quello che è stato scritto nei post precedenti.

Risposte
minomic
Ciao, in realtà quello è LaTex e il risultato corretto lo ottieni con
\(\nexists\)

Infatti \(\nexists x \in \mathbb{R}: x^2+1=0\)

fabioamd87
bisognerebbe correggere il simbolo $\nexists$

Brancaleone1
Perfetto! :smt023

anonymous_be1147
Sì può fare però non automaticamente, per lo meno non con la configurazione attuale. Basta che vai a capo, scrivi la formula in ASCIIMathML (racchiudendola tra i due
$
), la selezioni e poi fai click sul pulsantino
[ center ]
nell'editor:

$ 1 / 2 + 1 = 3 / 2 $

Brancaleone1
"anonymous_be1147":
[quote="minomic"]Approfitto di questo thread per chiedere una cosa: come mai se cerco di inserire formule "fuori corpo" non vengono interpretate correttamente?
Ad esempio $(1/2)^x$ e $$(1/2)^x$$ dove per ottenere la seconda ho solo utilizzato un doppio simbolo di dollaro.
Succede perché nel primo caso stai usando ASCIIMathML, nel secondo invece LaTeX. Quindi per ottenere lo stesso risultato bisogna usare
\frac


$$\left(\frac{1}{2}\right)^x$$

P.S. A mio parere sarebbe meglio non usare il doppio dollaro, bensì i delilmitatori
\[
e
\]
.[/quote]
A tal proposito mi domandavo: è possibile fare in modo che per il "fuori corpo" (indipendentemente si usi
\[
\]
o il doppio dollaro) si possa impiegare la scrittura ASCIIMathML, molto più comoda della rigida LaTeX?

anonymous_be1147
Sì, non funzionano perché erano delle aggiunte che avevamo fatto noi allo script ASCIIMathML originale. I comandi riconosciuti sarebbero
~|
e
|~
oppure
lceiling
e
rceiling
. In ogni caso le ho ripristinate. Forse ce ne sarebbero altre da aggiungere. Appena ho un po' di tempo controllo per bene.

Grazie di averlo segnalato.

hamming_burst
Ho notato un problema con la funzione ceil e ASCIIMathML in alcuni vecchi post.

$\lceil\ n\ \rceil$
non viene convertito.

con MathJax: \(\lceil n \rceil\) oppure con il vecchio
[tex]
[tex]\lceil n \rceil[/tex] funziona.

vict85
"hamming_burst":
Non sapevo comunque questo fatto della convenzione. Infatti il phi a cui son abituato è questo \(\phi\), l'altro lo avrò usato solo come alternativa notazionale.


Lo ricordo perché il pacchetto unicode-math permette di scegliere lo standard da seguire.

Dopo aver guardato l'unicode devo dire che sono stato un po’ eccessivo. Lo scambio è avvenuto dall’unicode 3.0 (siamo alla 5.2) per il fatto che \(\displaystyle \varphi \) è la forma preferibile per il testo scritto in greco. L’unicode quindi ritiene che \(\displaystyle \phi \) sia un simbolo tecnico. Sinceramente, a meno di scrivere in greco, non è necessario distinguere per bene i due stili. In matematica comunque non è raro vedere \(\displaystyle \varphi \) anche su articoli stranieri.

hamming_burst
"vict85":
A rigore è l’opposto. Ma dipende da cosa viene considerato come quello corretto. Quello che tu ritieni corretto è l’ordine LateX, che però è l’opposto di quello Unicode (e quindi standardizzato). L’ordine di LateX deriva da preferenze di informatici e fisici americani, ma nella matematica e in Europa in genere la preferenza è invertita. Non è raro che un file LateX in italia e in europa scambi le due.

intendevo rispetto MathJax, perchè ricordavo che ASCIMathML sia convertito/interpretato in/da MathJax (e non MathML...).

Non sapevo comunque questo fatto della convenzione. Infatti il phi a cui son abituato è questo \(\phi\), l'altro lo avrò usato solo come alternativa notazionale.

[ot]
"anonymous_be1147":
Carina la tabella. Come hai fatto a farla? :-D

spiritosone :-D :-D[/ot]

vict85
"hamming_burst":
Ho notato che c'è uno swap nei simboli ASCIIMathML di phi e varphi

ACHIIMathMLMathML
$\phi$\(\phi\)varphi


l'ordine corretto è quello di MathML.


A rigore è l’opposto. Ma dipende da cosa viene considerato come quello corretto. Quello che tu ritieni corretto è l’ordine LateX, che però è l’opposto di quello Unicode (e quindi standardizzato). L’ordine di LateX deriva da preferenze di informatici e fisici americani, ma nella matematica e in Europa in genere la preferenza è invertita. Non è raro che un file LateX in italia e in europa scambi le due.

anonymous_be1147
Sì, è un bug che correggeranno nella prossima versione di MathJax.

[ot]Carina la tabella. Come hai fatto a farla? :-D[/ot]

hamming_burst
Ho notato che c'è uno swap nei simboli ASCIIMathML di phi e varphi

ACHIIMathMLMathML
$\phi$\(\phi\)varphi


l'ordine corretto è quello di MathML.

anonymous_be1147
Sistemato i simboli di dollaro sbagliati nella guida.

minomic
"anonymous_be1147":
Grazie della segnalazione. Putroppo la guida per la scrittura delle formule è da tempo che non viene aggiornata e quindi molte delle informazioni non sono più valide. Vedo se stasera riesco a correggere almeno questo problema.

Perfetto, grazie del sempre ottimo lavoro! :smt023

anonymous_be1147
Grazie della segnalazione. Putroppo la guida per la scrittura delle formule è da tempo che non viene aggiornata e quindi molte delle informazioni non sono più valide. Vedo se stasera riesco a correggere almeno questo problema.

minomic
Ciao,
noto che molto spesso gli utenti scrivono le formule racchiudendo il codice tra i simboli di dollaro ma prima di questi simboli inseriscono dei caratteri backslash che impediscono la corretta traduzione.
Infatti la guida per scrivere le formule dice proprio di fare così. Cito:

Come funziona?
Sul nostro server c'è un componente javascript che traduce il codice che voi scrivete (un linguaggio simile al LaTex e racchiuso tra i simboli \$ e \$) in MathML che è lo standard del W3C per scrivere formule matematiche nelle pagine Web.


Dato che evidentemente questo crea confusione, si potrebbe per favore correggere? Perchè altrimenti le formule vengono scritte male e la prima risposta ricevuta è sempre del tipo "Per favore, potresti togliere i backslash davanti ai simboli di dollaro?"
Grazie! ;)

anonymous_be1147
"lex153":
come mai non visualizzo piu la schermata per inserire una formula?

Riattivata.

minomic
"anonymous_be1147":
Succede perché nel primo caso stai usando ASCIIMathML, nel secondo invece LaTeX. Quindi per ottenere lo stesso risultato bisogna usare
\frac


$$\left(\frac{1}{2}\right)^x$$

P.S. A mio parere sarebbe meglio non usare il doppio dollaro, bensì i delilmitatori
\[
e
\]
.

Perfetto, grazie delle informazioni!

anonymous_be1147
Succede perché nel primo caso stai usando ASCIIMathML, nel secondo invece LaTeX. Quindi per ottenere lo stesso risultato bisogna usare
\frac


$$\left(\frac{1}{2}\right)^x$$

P.S. A mio parere sarebbe meglio non usare il doppio dollaro, bensì i delilmitatori
\[
e
\]
.

minomic
Approfitto di questo thread per chiedere una cosa: come mai se cerco di inserire formule "fuori corpo" non vengono interpretate correttamente?
Ad esempio $(1/2)^x$ e $$(1/2)^x$$ dove per ottenere la seconda ho solo utilizzato un doppio simbolo di dollaro.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.