- Questo topic ha 11 risposte, 5 partecipanti ed è stato aggiornato l'ultima volta 12 anni fa da
egreg9.
-
CreatoreTopic
-
26 Agosto 2014 alle 12:27 #96233::
salve ragazzi, non sono molto pratico di latex e sto cercando un modo di scrivere la formula riportata in figura in latex. ho provato a scriverla come frazione utilizzando \frac, ma il risultato non mi convence molto. Grazie a chi mi aiuterà
[attachment=1075]guit.PNG[/attachment]
Attachments:
You must be logged in to view attached files. -
CreatoreTopic
-
AutoreRisposte
-
-
26 Agosto 2014 alle 13:47 #96234::
leon_89″ post=95913salve ragazzi, non sono molto pratico di latex e sto cercando un modo di scrivere la formula riportata in figura in latex. ho provato a scriverla come frazione utilizzando \frac, ma il risultato non mi convence molto. Grazie a chi mi aiuterà
[attachment=1075]guit.PNG[/attachment]Benvenuto!
Ci mostreresti quello che hai ottenuto con un esempio minimo compilabile?
La formula è molto semplice e dovresti trovare tutte le informazioni necessarie
nelle guide disponibili. Alcune le trovi nella sezione “Documentazione” di questo sito.Ciao
Ivan
-
26 Agosto 2014 alle 13:53 #96235::
allora scrivendo questo codice
`\ensuremath{\frac{P \textbf{sat} S(\textit{tr})} {a \ensuremath{\rightarrow} P \textbf{sat} (\textit{tr} = \ensuremath{\langle}\ensuremath{\rangle} \lor (\textit{tr} = \ensuremath{\langle}a\ensuremath{\rangle} \ensuremath{\frown} \textit{tr'} \ensuremath{\land} S(\textit{tr'})))}}
`
il risultato ottenuto è:
[attachment=1076]guit2.PNG[/attachment]
più che altro vorrei sapere se c’è un altro modo di inserire la linea orizzontale oltre che con \fract. mi sono letto come guida l’arte di scrivere con latex e non ho trovato risposta. 🙁
Attachments:
You must be logged in to view attached files. -
26 Agosto 2014 alle 14:07 #96236::
Per scrivere un equazione bisogna conoscerne il significato; siccome io non capisco nulla di quello che c’è scritto (non sono digiuno di matematica, anzi, ma non sono un matematico; i simboli che appaiono nelle formula mi sono del tutto ignoti).Dunque ti posso dire solo questo: se la volessi ricomporre io userei l’ambiente array specificandone un certo allargamento mediante il comando \arraystretch (guida tematica nella sezione Documentazione del forum Il LaTeX Reference Manual commentato e tradotto in italiano, pagina 93)
Imposterei i descrittori di colonna entrambi l (L minuscola) e metterei un filetto orizzontale sotto al prima espressione.
Starei molto attento a (non) usare il neretto per un operatore (sap ???) e starei attento all’operatore tr che va in tondo, non in corsivo, qualunque cosa tr voglia dire. Esistono delle regole cogenti per la matematica usata nelle scienze sperimentali; queste regole non sono generalmente osservate dai matematici puri, ma anche loro seguono delle regole. Trova i riferimenti per le norme ISO che regolano la faccenda per le scienze sperimentali e la tecnologia sia su L’Arte di scrivere con LaTeX sia nella Guida GuIT, entrambe scaricabili dalla sezione documentazione di questo sito.
Se po Enrico, che è un matematico, ti può dare consigli migliori, seguili con attenzione.
-
26 Agosto 2014 alle 15:50 #96237::
leon_89″ post=95917allora scrivendo questo codice
`\ensuremath{\frac{P \textbf{sat} S(\textit{tr})} {a \ensuremath{\rightarrow} P \textbf{sat} (\textit{tr} = \ensuremath{\langle}\ensuremath{\rangle} \lor (\textit{tr} = \ensuremath{\langle}a\ensuremath{\rangle} \ensuremath{\frown} \textit{tr'} \ensuremath{\land} S(\textit{tr'})))}}
`
il risultato ottenuto è:
[attachment=1076]guit2.PNG[/attachment]
più che altro vorrei sapere se c’è un altro modo di inserire la linea orizzontale oltre che con \fract. mi sono letto come guida l’arte di scrivere con latex e non ho trovato risposta. 🙁
Non hai inviato un esempio minimo compilabile. Ma a parte questo la presenza massiccia di \ensuremath mi fa sospettare.
Io sono ancor meno matematico di Claudio ma senza dubbio la formula che hai scritto tu è inutilmente complicata.
In attesa di capire, come ha già detto Claudio, i significati dei simboli che usi, la formula si può semplificare in questo modo.
sat è stato inteso come simbolo di relazione.
`
\documentclass{article}\usepackage{amsmath}
\begin{document}
Lorem ipsum:
\begin{equation*}
\frac{P \mathrel{sat} S(tr)} {a \rightarrow P \mathrel{sat} (tr = \langle\rangle \lor (tr = \langle a \rangle \frown tr' \land S(tr')))}
\end{equation*}
dolor sit amet\end{document}`
“tr” è in attesa di ricevere una forma.
Si potrebbe per esempio definire un nuovo operatore
`\DeclareMathOperator{\tr}{tr}`
Se lo vuoi semplicemente in tondo:
`\text{tr}`
Ma tutto dipende dal significato dei segni.Ciao
Ivan
-
26 Agosto 2014 alle 16:38 #96238::
Per gli operatori matematici utilizza il comando [tt]\DeclareMathOperator[/tt] del pacchetto [tt]amsmath[/tt] in questo modo:
`
\usepackage{amsmath}\DeclareMathOperator{\sat}{sat}
\DeclareMathOperator{\tr}{tr}
`
In tal modo saranno scritti in tondo e verrà posta la corretta spaziatura attorno.Per la formula, stai abusando del comando [tt]\ensuremath[/tt] troppo, a mio parere, è inutile metterli uno dentro l’altro. Io la scriverei così (seguendo anche i consigli posti da @OldClaudio).
`
\documentclass{article}\usepackage{amsmath,booktabs}
\DeclareMathOperator{\sat}{sat}
\DeclareMathOperator{\tr}{tr}\[
\begin{array}{l}
P \sat S(\tr) \\
\midrule
a \rightarrow P \sat (\tr = \langle\rangle \lor (\tr = \langle a\rangle \frown \tr' \land S(\tr')))
\end{array}
\]
`
Ho caricato anche il pacchetto [tt]booktabs[/tt] per usare il filetto orizzontale [tt]\midrule[/tt] 😀
-
26 Agosto 2014 alle 17:19 #96239::
leon_89″ post=95917allora scrivendo questo codice
`\ensuremath{\frac{P \textbf{sat} S(\textit{tr})} {a \ensuremath{\rightarrow} P \textbf{sat} (\textit{tr} = \ensuremath{\langle}\ensuremath{\rangle} \lor (\textit{tr} = \ensuremath{\langle}a\ensuremath{\rangle} \ensuremath{\frown} \textit{tr'} \ensuremath{\land} S(\textit{tr'})))}}
`
il risultato ottenuto è:
[attachment=1076]guit2.PNG[/attachment]
più che altro vorrei sapere se c’è un altro modo di inserire la linea orizzontale oltre che con \fract. mi sono letto come guida l’arte di scrivere con latex e non ho trovato risposta. 🙁
L’uso di tutti quei \ensuremath mi insospettisce. Cerchiamo innanzitutto di semplificare le cose. Se vuoi creare una formula fuori corpo ci sono diverse soluzioni. Una è questa:
`
\[
\frac{P \mathrel{sat} S(tr)}{a \rightarrow P \mathrel{sat} (tr= \langle\rangle \lor (tr = \langle a\rangle\frown tr' \land S(tr')))}
\]
`
Con questo codice ottieni qualcosa di molto simile all’immagine che hai postato. Per aver sat in grassetto basta racchiuderlo in \mathbf.
Naturalmente questa non è una soluzione universale. Se per esempio usi spesso sat è meglio definirlo una volta per tutte. Ma come definirlo dipende dal significato che gli vuoi attribuire. Nell’esempio ho inteso sat come una relazione (soddisfacibilità?)Ciao
Ivan
-
27 Agosto 2014 alle 6:41 #96240
-
27 Agosto 2014 alle 7:05 #96241
-
27 Agosto 2014 alle 14:40 #96242::
Io non ho capito la formula, quindi dico delle cose generali.che sat sia on operatore di relazione chi lo capisco può confermarlo e @leon_89 l’ha confermato. Detto questo mi pare strano che non esista un simbolo già predisposto e sul quale convengano gli utenti di “soddisfa a”; Nessun altro operatore di relazione appare scritto in lettere nell’antologia genarla dei simboli di Scop Pakin (texdoc symbols)-a4); anzi quata antologia lo riporta come sinonimo di \models che a sua volta è sinonimo di \rightmodels; antologia dei simboli, pagina 33, tabella 76 (che comincia nella pagina 32, ma quel che ci interessa è nella pagina 33).
tr non può essere una variabile; le variabili sono sì in corsivo ma sono fatte di una sola lettera con quante apposizioni si vuole, di solito le apposizione sono al priede, come dei deponenti e sono scritti in tondo.
Gli informatici mi hanno coperto di contumelie quando ho scritto una frase del genere in un mio articolo sulla composizione della matematica; evidentemente non hanno l’abitudine di leggere di che cosa si sta parlando, perché è vero che essi usano parole alfanumeriche che chiamano varibaili per rappresentare simbolicamante dei registri della CPU e/o delle parole di memoria, ma quelle non sono variabili matematiche. In matematicha, che si parli di scienze sperimentali o di scienze esatte, la matematica richiede variabili rappresentate da una sola lettera latina o greca, inclinata, e composta con caratteri diversi (con o senza grazie, nere, o chiare, calligrafiche o semplicemnte corsive) con quante apposizioni si vuole, scritte in tedno se rappresentano delle “qualifiche” della variabile, e scritte in cordico se rappresentano quantità che pososno variare e a cui la varibaile è legata.
Questo è quanto dice ogni manuale di tipografia che parli della composizione della matematica (di cui la logica mi par bene che sia una disciplina che nel forma il copro generale; mi esprimo male, ma come ho detto sono un vilis mechanicus) Le norme ISO impongono altre regole, ma non modificano di certo queste che ho appena detto. (per esempio, le norme ISO richiedono che le costanti matematiche come e, pi greca, gamma, e simili simboli) siano scritti in tondo, per distinguerli da simboli analoghi di cose misurabili, anche se fisicamente parlando sono o dovrebbero essere delle costanti della fisica).
Tornando alla soddisfacibilità, il comando \satidfies è sininimo di \models che a sua volta è siniimo di rightmodels. Non so se @leon_89, usa sat in quel senso, perché come ho detto non capisco il significato della formula. Colpa mia che non la capisco, ma suggerirei di dare un’occhiata all’antologia dei simboli, prima di inventarne di nuovi.
-
27 Agosto 2014 alle 15:52 #96243::
Se ho almeno vagamente intuito di che si tratta, S(tr) è inteso come una proprietà che il processo P soddisfa . tr sta per trace, ovvero una particolare sequenza di eventi relativamente a un processo P. Una definizione si trova Qui (p. 64)
È vero che tr non è un’unica lettera, ma pare proprio che in questo contesto venga trattato come una variabile.
Siamo nel campo della “sicurezza informatica” 😉Ciao
Ivan
-
27 Agosto 2014 alle 19:27 #96244::
leon_89″ post=95917allora scrivendo questo codice
`\ensuremath{\frac{P \textbf{sat} S(\textit{tr})} {a \ensuremath{\rightarrow} P \textbf{sat} (\textit{tr} = \ensuremath{\langle}\ensuremath{\rangle} \lor (\textit{tr} = \ensuremath{\langle}a\ensuremath{\rangle} \ensuremath{\frown} \textit{tr'} \ensuremath{\land} S(\textit{tr'})))}}
`
il risultato ottenuto è:
[attachment=1076]guit2.PNG[/attachment]
più che altro vorrei sapere se c’è un altro modo di inserire la linea orizzontale oltre che con \fract. mi sono letto come guida l’arte di scrivere con latex e non ho trovato risposta. 🙁
Se LaTeX davvero costringesse a scrivere centinaia di [tt]\ensuremath[/tt] nessuno lo userebbe.
Usa una tabella in modo matematico; per evitare lungaggini, definisciti comandi per costruzioni di uso frequente:
`
\documentclass[a4paper]{article}
\usepackage{amsmath,booktabs}\newcommand{\sat}{\mathrel{\mathbf{sat}}}
\newcommand{\tie}{\mathbin{^{\frown}}}\begin{document}
\[
\begin{array}{l}
P \sat S(\mathit{tr}) \\
\midrule
a \rightarrow P \sat (\mathit{tr} = \langle\rangle \lor (\mathit{tr} = \langle a\rangle
\tie \mathit{tr}' \land S(\mathit{tr}')))
\end{array}
\]\end{document}
`[attachment=1078]sat.jpg[/attachment]
Ciao
Enrico
Attachments:
You must be logged in to view attached files.
-
-
AutoreRisposte
- Devi essere connesso per rispondere a questo topic.