Esiste un pacchetto per LaTeX che supporterà la scrittura di specifiche Z? Sono interessato ai formati orizzontali e verticali per gli schemi.Specifiche Z in LaTeX
risposta
C'è un pacchetto, si chiama zed-csp. Ecco un reference su come usarlo.
Ecco uno schema esempio:
\begin{schema}{InitJunction1}
\Delta Sys\\
junc?: JUNCTION\\
road1?: ROAD\\
road2?: ROAD
\where
road1? \neq road2?\\
junc? \notin juncList\\
\forall j: juncList @ \neg ((road1? \in roadsInJunc(j)) \land (road2? \in roadsInJunc(j))\\
roadsInJunc' = roadsInJunc \cup \{junc? \mapsto \{road1,road2\}\}\\
juncList' = juncList \cup \{junc?\}
\end{schema}
Vedi il mio Domanda e risposta sul tema: Zed Notation in LyX
Ci sono alcuni pacchetti che offrono il supporto per la scrittura specifica Z in LaTeX. Sebbene molti abbiano una sintassi molto simile e alcuni offrono funzioni extra.
- Cadiz.sty: https://www.cs.york.ac.uk/hise/cadiz/latexmarkuptut.html
- oz.sty: https://www.ctan.org/tex-archive/macros/latex/contrib/objectz?lang=en
- fuzz.sty: https://www.cs.cmu.edu/afs/cs/academic/class/15671-f95/ftp/fuzz.sty
- zed.sty: http://tug.ctan.org/macros/latex209/contrib/zed/zed.sty
- zeves.sty: http://www.informatik.uni-bremen.de/agbkb/lehre/ss12/foma/Z/z-eves.sty
- zed-CSP. sty: http://ctan.mackichan.com/macros/latex/contrib/zed-csp/zed-csp.sty
Ulteriori informazioni su questi pacchetti si possono trovare qui: http://czt.sourceforge.net/latex/
Essa spiega che è stato il fuzz.sty è stato il primo e contiene ancora le macro importanti non è compatibile con la norma ISO-Z standard, zed.sty e zed-csp.sty erano una versione di Oxford che ha migliorato il fuzz.sty ecc
Questo è ciò che il mio professore di Ingegneria del Software utilizzato per la LaTeX-formattazione quando si creano gli Z-schemi ed operazioni:
\usepackage{oz, amsfonts}
...
\begin{schema}{MusicStore}
member: \pset NAME\\
orders: \pset (NAME\times ALBUM)\\
owns: \pset (NAME\times ALBUM)
\ST
{\bf dom}\mbox{ } orders \subseteq member\\
{\bf dom}\mbox{ } owns \subseteq member\\
\forall (m, a)\in orders.(m, a)\notin owns
\end{schema}
Spero sia utile.
Grazie, avevo paura che la domanda si riferisse a qualcosa di specifico per LyX. –
Grazie ancora una volta, funziona come un fascino. –
@Gabriel Ščerbák nessun problema, grazie per i voti: P –