Attic/inferences.tex
author Christian Urban <urbanc@in.tum.de>
Thu, 15 Dec 2016 14:26:43 +0000
changeset 501 0d40d1f973e0
parent 359 c90f803dc7ea
permissions -rw-r--r--
updated
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
57
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     1
\documentclass{article}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     2
\usepackage{charter}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     3
\usepackage{proof}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     4
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     5
\begin{document}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     6
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     7
\section*{Inference Rules}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     8
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
     9
\begin{enumerate}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    10
\item Frequently used inference rules:
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    11
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    12
\begin{center}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    13
\mbox{\infer{F,\Gamma \vdash F}{}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    14
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    15
\mbox{\infer{\Gamma \vdash F_2}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    16
            {\Gamma \vdash F_1 \Rightarrow F_2 & \Gamma \vdash F_1}}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    17
\hspace{10mm}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    18
\mbox{\infer{\Gamma \vdash F_1 \Rightarrow F_2}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    19
            {F_1, \Gamma \vdash F_2}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    20
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    21
\mbox{\infer{\Gamma \vdash P \;\textit{says}\; F}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    22
            {\Gamma \vdash F}}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    23
\hspace{10mm}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    24
\mbox{\infer[\star]{\Gamma \vdash F}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    25
            {\Gamma \vdash P \;\textit{controls}\; F & \Gamma \vdash P
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    26
              \;\textit{says}\; F}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    27
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    28
\mbox{\infer{\Gamma \vdash P \;\textit{says}\;F_2}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    29
            {\Gamma \vdash P \;\textit{says}\; (F_1 \Rightarrow F_2) & 
64
d53d7d61f37b updated
Christian Urban <urbanc@in.tum.de>
parents: 57
diff changeset
    30
             \Gamma \vdash P \;\textit{says}\;F_1}}\medskip
57
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    31
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    32
\mbox{\infer{\Gamma \vdash F[x := t]}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    33
            {\Gamma \vdash \forall x. F}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    34
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    35
\mbox{\infer{\Gamma \vdash F_1 \wedge F_2}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    36
            {\Gamma \vdash F_1 & \Gamma \vdash F_2}}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    37
\hspace{10mm}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    38
\mbox{\infer{\Gamma \vdash F_1}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    39
            {\Gamma \vdash F_1 \wedge F_2}}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    40
\hspace{10mm}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    41
\mbox{\infer{\Gamma \vdash F_2}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    42
            {\Gamma \vdash F_1 \wedge F_2}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    43
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    44
\mbox{\infer[\star]{\Gamma \vdash Q\;\textit{says}\; F}{\Gamma \vdash P\mapsto Q &
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    45
    \Gamma \vdash P\;\textit{says}\; F}}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    46
\end{center}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    47
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    48
\item Less frequently used inference rules:
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    49
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    50
\begin{center}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    51
\mbox{\infer{\Gamma \vdash slev(P) < slev(Q)}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    52
            {\Gamma \vdash slev(P) = l_1 & \Gamma \vdash slev(Q) = l_2 &
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    53
              \Gamma \vdash l_1 < l_2}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    54
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    55
\mbox{\infer{\Gamma \vdash slev(P) = slev(Q)}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    56
            {\Gamma \vdash slev(P) = l & \Gamma \vdash slev(Q) = l}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    57
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    58
\mbox{\infer{\Gamma \vdash l_1 < l_3}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    59
            {\Gamma \vdash l_1 < l_2 & \Gamma \vdash l_2 < l_3}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    60
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    61
\mbox{\infer[\star]{\Gamma \vdash P \mapsto R}{\Gamma \vdash P\mapsto Q & \Gamma
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    62
    \vdash Q \mapsto R}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    63
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    64
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    65
\mbox{\infer{\Gamma \vdash F_1 \vee F_2}{\Gamma \vdash F_1}}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    66
\hspace{5mm}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    67
\mbox{\infer{\Gamma \vdash F_1 \vee F_2}{\Gamma \vdash F_2}}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    68
\hspace{5mm}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    69
\mbox{\infer{\Gamma \vdash F_3}{\Gamma \vdash F_1 \vee F_2 & F_1, \Gamma
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    70
    \vdash F_3 & F_2, \Gamma \vdash F_3}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    71
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    72
\mbox{\infer[c\;\mbox{must be a fresh variable}]{\Gamma \vdash \forall
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    73
    x. F}{\Gamma \vdash F[x := c]}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    74
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    75
\mbox{\infer{\Gamma \vdash \textit{true}}{}}\medskip
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    76
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    77
\mbox{\infer[\star]{\Gamma \vdash P\;\textit{controls}\; F}{\Gamma \vdash P\mapsto Q
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    78
    & \Gamma \vdash Q\;\textit{controls} F}}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    79
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    80
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    81
\end{center}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    82
\end{enumerate}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    83
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    84
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    85
$\star$ derived rules
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    86
\end{document}
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    87
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    88
%%% Local Variables: 
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    89
%%% mode: latex
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    90
%%% TeX-master: t
ecb3f92f54a5 added inferences
Christian Urban <urbanc@in.tum.de>
parents:
diff changeset
    91
%%% End: