diff --git a/tesi/.gitignore b/tesi/.gitignore index bbd865c..03ea693 100644 --- a/tesi/.gitignore +++ b/tesi/.gitignore @@ -3,6 +3,7 @@ tesi.tex tesi_unicode.tex part4_unicode.tex +part4.tex ## Core latex/pdflatex auxiliary files: diff --git a/tesi/gabriel/part4.pdf b/tesi/gabriel/part4.pdf index c744289..4d09d10 100644 Binary files a/tesi/gabriel/part4.pdf and b/tesi/gabriel/part4.pdf differ diff --git a/tesi/gabriel/part4.tex b/tesi/gabriel/part4.tex index 05c321e..a0d244c 100644 --- a/tesi/gabriel/part4.tex +++ b/tesi/gabriel/part4.tex @@ -1,4 +1,4 @@ -% Created 2020-04-11 Sat 00:25 +% Created 2020-04-11 Sat 00:26 % Intended LaTeX compiler: pdflatex \documentclass[11pt]{article} \usepackage[utf8]{inputenc} @@ -64,10 +64,10 @@ xleftmargin=1em, \begin{document} \section{Translation validation of the Pattern Matching Compiler} -\label{sec:org45bb046} +\label{sec:org3d79c1b} \subsection{Source program} -\label{sec:orgf4d7ca7} +\label{sec:orgc2c278d} The algorithm takes as its input a source program and translates it into an algebraic data structure which type we call \emph{decision\_tree}. @@ -412,7 +412,7 @@ TODO: fix \{0} \begin{enumerate} \item Proof: -\label{sec:org9868f7d} +\label{sec:org160a47b} Let \(m\) be a matrix with \[Group(m) = (k_r \to m_r)^k, m_{wild}\] Let \((v_i)^i\) be an input matrix with \(v_0 = k(v'_l)^l\) for some k. We proceed by case analysis: @@ -472,7 +472,7 @@ We can also show that a$_i$ = (a\(_{\text{0.l}}\))$^l$ \sout{+} a\(_{\text{i$\in \subsection{Target translation} -\label{sec:org5f1edb6} +\label{sec:orgd2ea1d0} The target program of the following general form is parsed using a parser generated by Menhir, a LR(1) parser generator for the OCaml programming language. @@ -560,7 +560,7 @@ $\forall$v$_T$, t$_T$(v$_T$) = $\llbracket$t$_T$$\rrbracket$$_T$(v$_T$)\\ \subsection{Equivalence checking} -\label{sec:org4d9383d} +\label{sec:org33b978b} The equivalence checking algorithm takes as input a domain of possible values \emph{S} and a pair of source and target decision trees and