Blame view
ZB2SMT/ZB2SMT_Documentation/czt.sty
3.31 KB
22e44bf4e
![]() |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 |
%% Style file for Community Z Tools (CZT) Project. %% This extends oz.sty, which defines all the symbols we need %% and seems to be widely available. \usepackage{oz} % Some standard Z commands ewenvironment{zsection}{\zed}{\endzed} ewcommand{\SECTION}{\boldword{section}} ewcommand{\parents}{\boldword{parents}} ewcommand{\function}{\boldword{function}} ewcommand{\generic}{\boldword{generic}} ewcommand{\relation}{\boldword{relation}} ewcommand{\leftassoc}{\boldword{leftassoc}} ewcommand{\rightassoc}{\boldword{rightassoc}} ewcommand{\LET}{\boldword{let}} ewcommand{\IF}{\boldword{if}} ewcommand{\THEN}{\boldword{then}} ewcommand{\ELSE}{\boldword{else}} %% These need defining, because they are not defined in oz.sty ewcommand{\listarg}{\mathrel{,,}} ewcommand{\varg}{\mathbin{\_}} ewcommand{\symdiff}{\mathbin{\ominus}} ewcommand{\plus}{{}^{+}} ewcommand{\extract}{\mathbin{\ires}} % \ires is from oz.sty ewcommand{ egate}{\mathop{-}} ewcommand{\arithmos}{{\mathbb A}} % oz.sty loads the AMS fonts ewcommand{\pipe}{\zpipe} % \zpipe is from oz.sty %% These need redefining, because the Z standard requires %% something different to oz.sty (or to LaTeX, for \star!) \def\star{{}^{*}} % we must override standard LaTeX \star! \def\infix{\boldword{infix}} % this overrides the oz.sty \infix. \def\partition{\boldword{partition}} % overrides the oz.sty 'partitions' %% The Z Standard now uses the 'theorem' environment for conjectures. %% See the Z Standard defect report 13568/003, %% available from http://www.cs.york.ac.uk/hise/Zstandard/defects.html %% Here are several different styles for displaying the theorem name: %% As a zero-width superscript % ewcommand{\ZedTheoremName}[1]{\hbox to % 0pt{\raisebox{2ex}{\scriptsize#1}}} %% As a left-margin annotation ewcommand{\ZedTheoremName}[1]{\llap{\raisebox{0.0ex}{% \scriptsize#1\hspace{0.5em}}}} %% Like a right-justified equation number % ewcommand{\ZedTheoremName}[1]{\hbox to 0pt{\hbox to % \textwidth{\hbox{}\hfill{\footnotesize[#1]}}}} %% Do not show it at all. % ewcommand{\ZedTheoremName}[1]{} \renewenvironment{theorem}[1]{\zed\ZedTheoremName{#1}}{\endzed} %% These commands are for the ZPattern extension of Z, %% which makes it possible to define rewrite rules and inference rules. %% See zpattern_toolkit.tex for the Z-parseable parts of the definitions. ewenvironment{zedjoker}[1]{\par$\bigstar$ #1\ }{\hfill\par} % Rule syntax: \begin{zedrule}{Name} Ant1 \\ Ant2 \derive Concl \end{zedrule} ewenvironment{zedrule}[1]{\par\textbf{rule }#1\vspace{-2ex}\infrule}{\endinfrule} ewcommand{\derives}{\derive{}} ewcommand{\substitute}{\mathrel{\curvearrowleft}} % U+21B6 ewcommand{\proviso}{\raisebox{0.5ex}{${}_{\blacktriangleright}\ $}}%%or\star % This mapping to unicode is now in zpattern_toolkit.tex % %%Zprechar \proviso U+22C6 % small star, or % %%Zprechar \proviso U+25B8 % small solid triangle |> ) % Z Pattern operators for use within == provisos. ewcommand{\schemaminus}{\mathbin{\textbf{schemaminus}}} ewcommand{\schemamerge}{\mathbin{\textbf{schemamerge}}} ewcommand{\hasDefn}{\mathbin{\textbf{hasDefn}}} ewcommand{\is}{\mathbin{\textbf{is}}} % These Z Pattern operators are not used yet. ewcommand{\Context}{\Gamma} ewcommand{ otfreein}{\mathbin{\boldword{notfreein}}} |