chiark / gitweb /
revid - use "git foo" not "git-foo"
[topbloke-formulae.git] / article.tex
1 \documentclass[a4paper,leqno]{strayman}
2 \errorcontextlines=50
3 \let\numberwithin=\notdef
4 \usepackage{amsmath}
5 \usepackage{mathabx}
6 \usepackage{txfonts}
7 \usepackage{amsfonts}
8 \usepackage{mdwlist}
9 %\usepackage{accents}
10
11 \usepackage{fancyhdr}
12 \pagestyle{fancy}
13 \lhead[\rightmark]{}
14 \lfoot[\thepage]{\input{revid.inc}}
15 \rfoot[\input{revid.inc}]{\thepage}
16
17 \let\stdsection\section
18 \renewcommand\section{\newpage\stdsection}
19
20 \renewcommand{\ge}{\geqslant}
21 \renewcommand{\le}{\leqslant}
22 \newcommand{\nge}{\ngeqslant}
23 \newcommand{\nle}{\nleqslant}
24
25 \newcommand{\has}{\sqsupseteq}
26 \newcommand{\isin}{\sqsubseteq}
27
28 \newcommand{\nothaspatch}{\mathrel{\,\not\!\not\relax\haspatch}}
29 \newcommand{\notpatchisin}{\mathrel{\,\not\!\not\relax\patchisin}}
30 \newcommand{\haspatch}{\sqSupset}
31 \newcommand{\patchisin}{\sqSubset}
32
33         \newif\ifhidehack\hidehackfalse
34         \DeclareRobustCommand\hidefromedef[2]{%
35           \hidehacktrue\ifhidehack#1\else#2\fi\hidehackfalse}
36         \newcommand{\pa}[1]{\hidefromedef{\varmathbb{#1}}{#1}}
37
38 \newcommand{\set}[1]{\mathbb{#1}}
39 \newcommand{\pay}[1]{\pa{#1}^+}
40 \newcommand{\pan}[1]{\pa{#1}^-}
41
42 \newcommand{\p}{\pa{P}}
43 \newcommand{\py}{\pay{P}}
44 \newcommand{\pn}{\pan{P}}
45
46 \newcommand{\pl}{\pa{L}}
47 \newcommand{\ply}{\pay{L}}
48 \newcommand{\pln}{\pan{L}}
49
50 \newcommand{\pq}{\pa{Q}}
51 \newcommand{\pqy}{\pay{Q}}
52 \newcommand{\pqn}{\pan{Q}}
53
54 \newcommand{\pr}{\pa{R}}
55 \newcommand{\pry}{\pay{R}}
56 \newcommand{\prn}{\pan{R}}
57
58 %\newcommand{\hasparents}{\underaccent{1}{>}}
59 %\newcommand{\hasparents}{{%
60 %  \declareslashed{}{_{_1}}{0}{-0.8}{>}\slashed{>}}}
61 \newcommand{\hasparents}{>_{\mkern-7.0mu _1}}
62 \newcommand{\areparents}{<_{\mkern-14.0mu _1\mkern+5.0mu}}
63
64 \renewcommand{\implies}{\Rightarrow}
65 \renewcommand{\equiv}{\Leftrightarrow}
66 \renewcommand{\nequiv}{\nLeftrightarrow}
67 \renewcommand{\land}{\wedge}
68 \renewcommand{\lor}{\vee}
69
70 \newcommand{\pancs}{{\mathcal A}}
71 \newcommand{\pends}{{\mathcal E}}
72
73 \newcommand{\pancsof}[2]{\pancs ( #1 , #2 ) }
74 \newcommand{\pendsof}[2]{\pends ( #1 , #2 ) }
75
76 \newcommand{\merge}{{\mathcal M}}
77 \newcommand{\mergeof}[4]{\merge(#1,#2,#3,#4)}
78 %\newcommand{\merge}[4]{{#2 {{\frac{ #1 }{ #3 } #4}}}}
79
80 \newcommand{\patch}{{\mathcal P}}
81 \newcommand{\base}{{\mathcal B}}
82
83 \newcommand{\patchof}[1]{\patch ( #1 ) }
84 \newcommand{\baseof}[1]{\base ( #1 ) }
85
86 \newcommand{\eqntag}[2]{ #2 \tag*{\mbox{#1}} }
87 \newcommand{\eqn}[2]{ #2 \tag*{\mbox{\bf #1}} }
88
89 %\newcommand{\bigforall}{\mathop{\hbox{\huge$\forall$}}}
90 \newcommand{\bigforall}{%
91   \mathop{\mathchoice%
92     {\hbox{\huge$\forall$}}%
93     {\hbox{\Large$\forall$}}%
94     {\hbox{\normalsize$\forall$}}%
95     {\hbox{\scriptsize$\forall$}}}%
96 }
97
98 \newcommand{\Largeexists}{\mathop{\hbox{\Large$\exists$}}}
99 \newcommand{\Largenexists}{\mathop{\hbox{\Large$\nexists$}}}
100
101 \newcommand{\qed}{\square}
102 \newcommand{\proofstarts}{{\it Proof:}}
103 \newcommand{\proof}[1]{\proofstarts #1 $\qed$}
104
105 \newcommand{\gathbegin}{\begin{gather} \tag*{}}
106 \newcommand{\gathnext}{\\ \tag*{}}
107
108 \newcommand{\true}{t}
109 \newcommand{\false}{f}
110
111 \begin{document}
112
113 \input{notation.tex}
114 \input{invariants.tex}
115 \input{lemmas.tex}
116 \input{annotations.tex}
117
118 \input{simple.tex}
119 \input{create-base.tex}
120 \input{create-tip.tex}
121 \input{anticommit.tex}
122 \input{merge.tex}
123
124 \end{document}