質問

Z仕様の作成をサポートするラテックス用のパッケージはありますか?スキーマの水平形式と垂直形式の両方に興味があります。

役に立ちましたか?

解決

パッケージがあり、呼ばれます zed-csp. 。これが次のとおりです 参照 それを使用する方法について。

これがスキーマの例です。

\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}

私の質問を見て、主題に関する答えを参照してください。LyxのZed Notation

他のヒント

LaTexでZ仕様の作成をサポートするパッケージはかなりあります。多くは非常によく似た構文を持っていますが、一部は追加機能を提供しています。

これらのパッケージの詳細については、こちらをご覧ください。 http://czt.sourceforge.net/latex/

それはFuzz.styが最初であり、重要なマクロを含んでいたが、ISO-Z標準と互換性がないことを説明します。Zed.styとZed-Csp.styはFuzz.styなどで改善されたオックスフォードバージョンでした。

これは、私のソフトウェアエンジニアリング教授が、Zスケマと操作を作成する際にラテックス形式に使用したものです。

\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}

役に立つことを願っています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top