paper-BagRelationalPDBsAreHard/analysis.tex

355 lines
24 KiB
TeX
Raw Normal View History

2019-06-05 11:57:05 -04:00
% -*- root: main.tex -*-
\section{Analysis}
\label{sec:analysis}
%We begin the analysis by showing that with high probability an estimate is approximately $\numWorldsP$, where $p$ is a tuple's probability measure for a given TIPD. Note that
%\begin{equation}
%%\gVt{k\cdot}
%\numWorldsP = \numWorldsSum\label{eq:mu}.
%\end{equation}
%Furthermore, when $\genV$ is generalized to have elements in the range $\left[0, \infty\right]$, we obtain the result
%\begin{equation}
%\norm{\genV}\prob = \numWorldsSum\label{eq:gen-mu}.
%\end{equation}
We start off by making the claim that the expectation of the estimate of annotations across all worlds is $\sum\limits_{\wVec \in \pw}\genVParam{\wVec}$, formally
2019-06-14 10:50:38 -04:00
\begin{equation}
\expect{\sum_{\wVec \in \pw} \sketchJParam{\sketchHashParam{\wVec}} \cdot \sketchPolarParam{\wVec}} = \sum_{\wVec \in \pw}\genVParam{\wVec}\label{eq:allWorlds-est}.
2019-06-14 10:50:38 -04:00
\end{equation}
To verify this claim, we argue that $\forall \wVec \in \pw$, the expectation of the estimate of an annotation in a single world is its annotation, i.e. the output of $\genVParam{\wVec}$, i.e.
\begin{equation}
\expect{\sketchJParam{\sketchHashParam{\wVec}}\cdot \sketchPolarParam{\wVec}} = \genVParam{\wVec} \label{eq:single-est}.
\end{equation}
For a given $\wVec \in \pw$, substituting definitions we have
\begin{align}
&\expect{\sketchJParam{\sketchHashParam{\wVec}} \cdot \sketchPolarParam{\wVec}} = \nonumber\\
&\phantom{{}\sketchJParam{\sketchHashParam{\wVec}}}\expect{\big(\sum_{\substack{\wVecPrime \in \pw \st \\
\sketchHashParam{\wVecPrime} = \sketchHashParam{\wVec}}}\genVParam{\wVecPrime} \cdot \sketchPolarParam{\wVecPrime}\big) \cdot \sketchPolarParam{\wVec} }\label{eq:step-one}\\.
%\end{align}
%Since $\wVec \in \pw$, we know that for $\wVecPrime\in \pw, \exists \wVecPrime \st \wVecPrime = \wVec$. This yields
%\[
=&~\expect{\genVParam{\wVecPrime}\sketchPolarParam{\wVec}^2 +
\sum\limits_{\substack{\wVecPrime, \wVec \in \pw \st \\
\sketchHashParam{\wVecPrime} = \sketchHashParam{\wVec},\\
\wVecPrime \neq \wVec}}\genVParam{\wVecPrime}\sketchPolarParam{\wVecPrime}\sketchPolarParam{\wVec}}\label{eq:step-two}\\
=&~\expect{\genVParam{\wVec}\sketchPolarParam{\wVec}^2} +
\expect{\sum\limits_{\substack{\wVecPrime, \wVec \in \pw \st \\
\sketchHashParam{\wVecPrime} = \sketchHashParam{\wVec} \\
\wVecPrime \neq \wVec}}\genVParam{\wVecPrime}\sketchPolarParam{\wVecPrime}\sketchPolarParam{\wVec}}\label{eq:step-three}\\
=&~\genVParam{\wVec} \cdot \expect{\sketchPolarParam{\wVec}^2} + \nonumber\\
2019-08-07 11:57:07 -04:00
&\qquad\sum\limits_{\substack{\wVecPrime, \wVec \in \pw \st \\
\sketchHashParam{\wVecPrime} = \sketchHashParam{\wVec} \\
\wVecPrime \neq \wVec}}\genVParam{\wVecPrime}\cdot\expect{\sum\limits_{\substack{\wVecPrime, \wVec \in \pw \st \\
2019-08-07 11:57:07 -04:00
\sketchHashParam{\wVecPrime} = \sketchHashParam{\wVec} \\
\wVecPrime \neq \wVec}}\sketchPolarParam{\wVecPrime}\sketchPolarParam{\wVec}}\label{eq:step-four}\\
=&~\genVParam{\wVec}\label{eq:step-five}
\end{align}
\begin{Justification}
\hfill
\begin{itemize}
\item \eq{\eqref{eq:step-one}} is a substitution of the definition of $\sketch$.
2019-08-07 09:51:55 -04:00
\item \eq{\eqref{eq:step-two}} uses the associativity of addition to rearrange the sum.
\item \eq{\eqref{eq:step-three}} uses linearity of expectation to reduce the large expectation into smaller expectations.
\item \eq{\eqref{eq:step-four}} further pushes expectation into the $\sketchPolar$ terms.
\item \eq{\eqref{eq:step-five}} follows from evaluating the expectations and taking the product of their results and their respective operands.
\end{itemize}
\end{Justification}
%which in turn
%\begin{multline*}
%\mathbb{E}\big[\genVParam{\wVecPrime_0}\cdot \sketchPolarParam{\wVecPrime_0} + \cdots \\
%+\genVParam{\wVecPrime_j}\cdot \sketchPolarParam{\wVecPrime_j}\cdot \sketchPolarParam{\wVecPrime_j}+ \cdots \\
%+ \genVParam{\wVecPrime_n}\sketchPolarParam{\wVecPrime_n}\big]
%\end{multline*}
%\AH{break it up into w' and w}
%Due to the uniformity of $\sketchPolar$, we have
%\begin{equation*}
%= \genVParam{\wVec},
%\end{equation*}
thus verifying \eqref{eq:single-est}.
\begin{Assumption}
\hfill
\begin{itemize}
\item \eq{\eqref{eq:step-four}} assumes that $\sketchPolar$ is pairwise independent.
%\item $\sketchHash$ is uniformly distributed.
\end{itemize}
\end{Assumption}
Since \eqref{eq:single-est} holds, by linearity of expectation, \eqref{eq:allWorlds-est} also must hold.
%We can now take \eqref{eq:single-est}, substitute it in for \eqref{eq:allWorlds-est} and show by linearity of expectation that \eqref{eq:allWorlds-est} holds.
%\begin{align}
%&\expect{\sum_{\wVec \in \pw} \sketchJParam{\sketchHashParam{\wVec}} \cdot \sketchPolarParam{\wVec}} \nonumber\\
%&= \expect{\sum_{\wVecPrime \in \pw}\genVParam{\wVecPrime} \cdot \sketchPolarParam{\wVecPrime} \cdot \sum_{\substack{\wVec \in \pw \st \\
%\sketchHashParam{\wVecPrime} = \sketchHashParam{\wVec}}}\sketchPolarParam{\wVec}}\nonumber\\
%&= \sum_{\wVec \in \pw} \expect{\left( \sum_{\substack{\wVecPrime \in \pw \st \\
%\sketchHashParam{\wVecPrime} = \sketchHashParam{\wVec}}}\genVParam{\wVecPrime}\cdot\sketchPolarParam{\wVecPrime}\right) \cdot \sketchPolarParam{\wVec}}\nonumber\\
%&= \sum_{\wVec \in \pw}\genVParam{\wVec}\label{eq:estExpect}.
%\end{align}
%\begin{align}
%&\expect{\estimate}\\
%=&\expect{\estExpOne}\\
%=&\expect{\sum_{\substack{j \in [B],\\
% \wVec \in \pw~|~ \sketchHash{i}[\wVec] = j,\\
% \wVec[w']\in \pw~|~ \sketchHash{i}[\wVec[w']] = j} } v_t[\wVec] \cdot s_i[\wVec] \cdot s_i[\wVec[w']]}\\
%=&\multLineExpect\big[\sum_{\substack{j \in [B],\\
% \wVec~|~\sketchHashParam{\wVec}= j,\\
% \wVecPrime~|~\sketchHashParam{\wVecPrime} = j,\\
% \wVec = \wVecPrime}} \genVParam{\wVec} \cdot \sketchPolarParam{\wVec} \cdot \sketchPolarParam{\wVecPrime} + \nonumber \\
%&\phantom{{}\genVParam{\wVec}}\sum_{\substack{j \in [B], \\
% \wVec~|~\sketchHashParam{\wVec} = j,\\
% \wVecPrime ~|~ \sketchHashParam{\wVecPrime} = j,\\ \wVec \neq \wVecPrime}} \genVParam{\wVec} \cdot \sketchPolarParam{\wVec} \cdot\sketchPolarParam{\wVecPrime}\big]\textit{(by linearity of expectation)}\\
%=&\expect{\sum_{\substack{j \in [B],\\
% \wVec~|~\sketchHashParam{\wVec}= j,\\
% \wVecPrime~|~\sketchHashParam{\wVecPrime} = j,\\
% \wVec = \wVecPrime}} \genVParam{\wVec} \cdot \sketchPolarParam{\wVec} \cdot \sketchPolarParam{\wVecPrime}} \nonumber \\
%&\phantom{{}\big[}\textit{(by uniform distribution in the second summation)}\\
%=& \estExp \label{eq:estExpect}
%\end{align}
2019-06-05 11:57:05 -04:00
%\AR{A general comment: The last display equation should have a period at the end. The idea is that display equations are considered part of a sentence and every sentence should end with a period.}
%\AH{Thank you for clarifying this, as I have always wondered what the convention was for display equations. Hopefully, I haven't missed any end display equations in this paper, and have them all fixed properly.}
2019-06-27 23:55:45 -04:00
2019-07-09 12:52:54 -04:00
For the next step, we show that the variance of an estimate is small.%$$\varParam{\estimate}$$
2019-08-14 21:30:38 -04:00
2019-06-05 11:57:05 -04:00
\begin{align}
&\varParam{\sum_{\wVec \in \pw}\sketchJParam{\sketchHashParam{\wVec}} \cdot \sketchPolarParam{\wVec}}\\%\nonumber\\
=~&\varParam{\sum_{\wVec \in \pw}\genVParam{\wVec} \cdot \sketchPolarParam{\wVec} \sum_{\substack{\wVecPrime \in \pw \st\\ \sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\sketchPolarParam{\wVecPrime}}\label{eq:var_step-one}\\%\nonumber\\%\estExpOne}\\
=~& \mathbb{E}\big[\big(\sum_{\substack{ \wVec, \wVecPrime \in \pw \st \\
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}} \genVParam{\wVec} \cdot \sketchPolarParam{\wVec} \cdot \sketchPolarParam{\wVecPrime}\nonumber\\
&\qquad - \expect{\sum_{\wVec \in \pw} \sketchJParam{\sketchHashParam{\wVec}} \cdot \sketchPolarParam{\wVec}}\big)^2\big]\label{eq:var_step-two}\\%\nonumber\\
2019-07-09 12:52:54 -04:00
=~&\mathbb{E}\big[\sum_{\substack{
2019-06-05 11:57:05 -04:00
\wVec_1, \wVec_2,\\
2019-06-05 13:14:32 -04:00
\wVecPrime_1, \wVecPrime_2 \in \pw,\\
\sketchHashParam{\wVec_1} = \sketchHashParam{\wVecPrime_1},\\
\sketchHashParam{\wVec_2} = \sketchHashParam{\wVecPrime_2}
}}\genVParam{\wVec_1} \genVParam{\wVec_2}\sketchPolarParam{\wVec_1}\sketchPolarParam{\wVec_2}\sketchPolarParam{\wVecPrime_1}\sketchPolarParam{\wVecPrime_2}\big]\nonumber\\
&\qquad - \left(\sum_{\wVec \in \pw}\genVParam{\wVec}\right)^2 \label{eq:var-sum-w}.
2019-06-07 15:38:01 -04:00
\end{align}
\begin{Justification}
\hfill
\begin{itemize}
\item \eq{\eqref{eq:var_step-one}} follows from substituting the definition of $\sketch$ and the commutativity of addition. Note the constraint on $\sketchHash$ hashing to the same bucket follows from the definition of $\sketch$. Also, the sum can be rearranged to take each component item in the sum of each bucket and take its sum of products with each of the $\sketchPolar$ mapped to it. This can be done as previously stated, using the commutativity of addition.
\item \eq{\eqref{eq:var_step-two}} by substituting the definition of variance.
\item \eq{\eqref{eq:var-sum-w}} results from the further evaluation of \eqref{eq:var_step-two}.
\end{itemize}
\end{Justification}
\begin{Assumption}
\hfill
\begin{itemize}
\item The subsequent evaluations of expectation assume 4-wise independence of $\sketchPolar$.
\end{itemize}
\end{Assumption}
2019-06-07 15:38:01 -04:00
Note that four-wise independence is assumed across all four random variables of \eqref{eq:var-sum-w}. Zooming in on the products of the $\sketchPolar$ functions,
2019-06-07 15:38:01 -04:00
\begin{equation}
2019-08-14 21:30:38 -04:00
\sketchPolarParam{\wOne}\cdot\sketchPolarParam{\wOneP}\cdot\sketchPolarParam{\wTwo}\cdot\sketchPolarParam{\wTwoP} \label{eq:polar-product}
2019-06-07 15:38:01 -04:00
\end{equation}
2019-07-25 09:52:02 -04:00
we see that %it can be seen that for $\wOne, \wOneP \in \pw$ and $\wTwo, \wTwoP \in \pw'$, all four random variables in \eqref{eq:polar-product} take their values from $\pw$, although we have iteration over two separate sets $\pw$.
2019-08-15 08:55:08 -04:00
there are five possible sets of $\wVec$ variable combinations. The following sets all assume each $\wVec$ to be from the set $\pw$. For $a, b, c, d \in \{1, 1', 2, 2'\} \st a \neq b \neq c \neq d$:
2019-08-14 21:30:38 -04:00
2019-06-07 15:38:01 -04:00
\begin{align*}
2019-08-15 08:55:08 -04:00
&\distPattern{1}:\forNElems{\cOne}\\
&\distPattern{2}:\forElems{\cTwo}\\
&\distPattern{3}:\forElems{\cThree}\\
&\distPattern{4}:\forElems{\cFour}\\
&\distPattern{5}:\forNElems{\cFive}
2019-06-07 15:38:01 -04:00
\end{align*}
2019-08-15 08:55:08 -04:00
With four random variables coming from sets containing the same elements, there exist five possibilities in how they relate to one another. This is true since they come from the same set or seperate, yet duplicate sets each containing the same members. Therefore, any $\wVec$ variable can be equal or alternatively not equal to its remaining counterparts. A simple enumeration in equalities (non-equalities) suffices to partition the set of all possible combinations. The variables could all be equal as we see in $\distPattern{1}$, or three of the variables could be equal, with the fourth different. Enumerating to having just two varibales sharing an equality generates two cases, because we have two variables left over, which themselves may either be equal or not equal. There is the case of $\distPattern{2}$ where a pair of variables could be the same with the remaining two equal to each other but not equal to the first two. $\distPattern{3}$ is the case when there are two variables the same, with the remaining variables not equal to any of the others. And finally, they could all be different as in $\distPattern{5}$.
The use of variable subscripts in the notation is necessary as different combinations of equal $\wVec$ variables produce different results in the variance computation, as we will see shortly.
2019-08-14 21:30:38 -04:00
Note that each $\wVec$ is the input of the same $\sketchPolar$ function, meaning, that equal worlds will produce the same output.
2019-06-07 15:38:01 -04:00
2019-06-27 23:55:45 -04:00
We are interested in those particular cases whose expectation does not equal zero, since an expectation of zero will not add to the summation of \eqref{eq:var-sum-w}. In expectation we have that
2019-06-07 15:38:01 -04:00
\begin{align}
2019-08-15 08:55:08 -04:00
\forAllNW{\distPattern{1}}&\rightarrow\expect{%\sum_{\substack{\elems \\
2019-06-14 10:50:38 -04:00
%\st \cOne}}
2019-08-15 08:55:08 -04:00
\polarProdNEq} = 1 \label{eq:polar-prod-all}
2019-07-09 12:52:54 -04:00
\end{align}
since we have the same element of the image of $\sketchPolar$ being multiplied to itself an even number of times. Similarly,
\begin{align}
2019-06-19 14:08:03 -04:00
\forAllW{\distPattern{2}}&\rightarrow\expect{%\sum_{\substack{\elems \\
2019-06-14 10:50:38 -04:00
%\st \cTwo}}
2019-07-09 12:52:54 -04:00
\polarProdEq} = 1 \label{eq:polar-prod-two-and-two}
\end{align}
because the same element of the image of $\sketchPolar$ is being multiplied to itself for each equality, producing a polarity of 1 for each equality, and then a final product of 1. For $\distPattern{3}, \distPattern{4}, \distPattern{5}$, we have a final product of two, three or four independent variables $\in \{-1, 1\}$, thus producing the following results:
\begin{align}
2019-06-19 14:08:03 -04:00
\forAllW{\distPattern{3}}&\rightarrow\expect{%\sum_{\substack{\elems \\
2019-06-14 10:50:38 -04:00
%\st \cThree}}
2019-07-09 12:52:54 -04:00
\polarProdEq} = 0 \nonumber
\end{align}
\begin{align}
2019-06-19 14:08:03 -04:00
\forAllW{\distPattern{4}}&\rightarrow\expect{%\sum_{\substack{\elems \\
2019-06-14 10:50:38 -04:00
%\st \cFour}}
2019-07-09 12:52:54 -04:00
\polarProdEq} = 0 \nonumber
\end{align}
\begin{align}
2019-08-15 08:55:08 -04:00
\forAllNW{\distPattern{5}}&\rightarrow\expect{%\sum_{\substack{\elems \\
2019-06-14 10:50:38 -04:00
%\st \cFive}}
2019-08-15 08:55:08 -04:00
\polarProdNEq} = 0. \nonumber
2019-06-07 15:38:01 -04:00
\end{align}
2019-06-07 15:38:01 -04:00
2019-06-14 10:50:38 -04:00
Only equations \eqref{eq:polar-prod-all} and \eqref{eq:polar-prod-two-and-two} influence the $\var$ computation.
Considering $\distPattern{1}$ the variance results in
2019-08-15 09:55:09 -04:00
\AH{Add expectation notation.}
2019-06-07 15:38:01 -04:00
\begin{equation}
2019-07-09 12:52:54 -04:00
\distPatOne\label{eq:distPatOne}.
2019-06-07 15:38:01 -04:00
\end{equation}
2019-07-09 12:52:54 -04:00
This is the case because we have that
\begin{align*}
&\sum_{\substack{\wOne, \wOneP, \wTwo, \wTwoP \in \pw \st \\
\wOne = \wTwo = \wOneP = \wTwoP = \wVec}}
\genVParam{\wVec} \cdot \genVParam{\wVec} \cdot \sketchPolarParam{\wVec} \cdot \sketchPolarParam{\wVec} \cdot \sketchPolarParam{\wVec} \cdot \sketchPolarParam{\wVec}\\
= &\sum_{\wVec \in \pw} \genVParam{\wVec}\cdot \genVParam{\wVec}\\
= &\sum_{\wVec \in \pw} \genVParam{\wVec}^2.
2019-07-09 12:52:54 -04:00
\end{align*}
2019-06-07 15:38:01 -04:00
2019-07-09 12:52:54 -04:00
For the distribution pattern $\cTwo$, we have three subsets $\distPattern{21}, \distPattern{22}, \distPattern{23} \subseteq \distPattern{2}$ to consider.
2019-06-07 15:38:01 -04:00
\begin{align*}
2019-07-09 12:52:54 -04:00
&\distPattern{21}:&\cTwoV{\wOne}{\wOneP}{\wTwo}{\wTwoP} \\
&\distPattern{22}:&\cTwoV{\wOne}{\wTwo}{\wOneP}{\wTwoP}\\
&\distPattern{23}:&\cTwoV{\wOne}{\wTwoP}{\wOneP}{\wTwo}
2019-06-07 15:38:01 -04:00
\end{align*}
2019-07-09 12:52:54 -04:00
Considered separately, the subsets result in the following $\var$.
2019-06-07 15:38:01 -04:00
\begin{align}
2019-07-09 12:52:54 -04:00
&\wOne = \wOneP \neq \wTwo =\wTwoP \rightarrow\nonumber\\
&\qquad = \sum_{\substack{\wOne, \wOneP, \wTwo, \wTwoP \in \pw \st \\
\wOne = \wOneP = \wVec \neq\\
2019-08-15 08:55:08 -04:00
\wTwo = \wTwoP = \wVecPrime}}\expect{\genVParam{\wVec}\genVParam{\wVecPrime}\sketchPolarParam{\wVec}\sketchPolarParam{\wVec}\sketchPolarParam{\wVecPrime}\sketchPolarParam{\wVecPrime}} \label{eq:variantOne}\nonumber\\
&\qquad = \sum_{\wVec, \wVecPrime \in \pw \st \wVec \neq \wVecPrime}\expect{\genVParam{\wVec}\genVParam{\wVecPrime}}\\
2019-07-09 12:52:54 -04:00
&\wOne = \wTwo \neq \wOneP = \wTwoP \rightarrow\nonumber\\
&\qquad = \sum_{\substack{\wOne, \wOneP, \wTwo, \wTwoP \in \pw \st \\
\wOne = \wTwo = \wVec \neq\\
\wOneP = \wTwoP = \wVecPrime,\\
2019-08-15 08:55:08 -04:00
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}} \expect{\genVParam{\wVec}\genVParam{\wVec}\sketchPolarParam{\wVec}\sketchPolarParam{\wVecPrime}\sketchPolarParam{\wVec}\sketchPolarParam{\wVecPrime}}\nonumber \\
&\qquad = \sum_{\wVec \in \pw}\expect{| \{\wVecPrime \st \wVecPrime \neq \wVec, \sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}\} | \cdot \genVParam{\wVec}^2}\label{eq:variantTwo} \\
2019-07-09 12:52:54 -04:00
&\wOne = \wTwoP \neq \wOneP =\wTwo \rightarrow \nonumber \\
&\qquad = \sum_{\substack{\wOne, \wOneP, \wTwo, \wTwoP \in \pw \st \\
\wOne = \wTwoP = \wVec \neq \\
\wOneP = \wTwo = \wVecPrime,\\
2019-08-15 08:55:08 -04:00
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\expect{ \genVParam{\wVec} \genVParam{\wVecPrime}\sketchPolarParam{\wVec}\sketchPolarParam{\wVecPrime}\sketchPolarParam{\wVecPrime}\sketchPolarParam{\wVec}} \nonumber \\
2019-07-09 12:52:54 -04:00
&\qquad = \sum_{\substack{\wVec, \wVecPrime \in \pw \st \\
\wVec \neq \wVecPrime,\\
2019-08-15 08:55:08 -04:00
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\expect{\genVParam{\wVec}\cdot\kMapParam{\wVecPrime}}\label{eq:variantThree}
2019-06-05 11:57:05 -04:00
\end{align}
2019-07-09 12:52:54 -04:00
Note that for $\distPattern{22}$, we have the cardinality of a bucket as a multiplicative factor for each squared annotation. This is because of the constraint that $\wOne \neq \wOneP$ coupled with the additional constraint that $\sketchHashParam{\wOne} = \sketchHashParam{\wOneP}$. Since $\wOneP$ must belong to the same bucket as $\wOne$, yet not equal to $\wOne$, we have that each operand of the sum must be the annotation squared for each $\wOneP$ that belongs to the same bucket but is not equal to $\wOne$.
Looking at $\distPattern{23}$, we have a similar case as $\distPattern{22}$, but this time there is no multiplicative factor since $\wOneP$ and $\wTwoP$ are constrained to equal their opposite $\wVec$ counterparts, which are the arguments for both $\genV$ terms.
2019-06-27 23:55:45 -04:00
2019-06-05 11:57:05 -04:00
Notice that the second term (expectation squared) of the $\var$ calculation is cancelled out by \eqref{eq:distPatOne} and \eqref{eq:variantOne}. %
2019-07-09 12:52:54 -04:00
2019-06-10 13:36:43 -04:00
\begin{equation*}
\big(\sum_{\wVec \in \pw}\genVParam{\wVec}\big)^2 = \sum_{\wVec \in \pw}\genVParam{\wVec}^2 +
\sum_{\substack{\wVec, \wVecPrime \in \pw \st\\
\wVec \neq \wVecPrime}}\genVParam{\wVec}\genVParam{\wVecPrime}.%\distPatOne + \variantOne.
2019-06-10 13:36:43 -04:00
\end{equation*}
\begin{Justification}
\hfill
\begin{itemize}
2019-08-14 21:30:38 -04:00
\item The LHS is the expectation squared. We obtain the RHS by first squaring the sum, and then, using the assoicative property of addition, rearranging the operands of the summation.
\end{itemize}
\end{Justification}
2019-06-10 13:36:43 -04:00
With only \eqref{eq:variantTwo} and \eqref{eq:variantThree} remaining, we have
\begin{multline*}
\varParam{\estimate} = \\
\expect{\sum_{\wVec, \wVecPrime \in \pw \st \wVec \neq \wVecPrime}| \{\wVecPrime \st \sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}\} | \cdot \genVParam{\wVec}^2} ~+ \\
\expect{\sum_{\substack{\wVec, \wVecPrime \in \pw \st \\
\wVec \neq \wVecPrime,\\
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\genVParam{\wVec}\cdot\kMapParam{\wVecPrime}}.
2019-06-10 13:36:43 -04:00
\end{multline*}
%Our current analysis is limited to TIPDBs, where the annotations are in the boolean $\mathbb{B}$ set. Because this is the case, the square of any element is itself.
Computing each term separately gives
2019-06-10 13:36:43 -04:00
\begin{align}
&\expect{\sum_{\wVec \in \pw}\big|~ \{\wVecPrime \st \wVecPrime \neq \wVec, \sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}\} ~\big| \cdot \genVParam{\wVec}^2}\nonumber\\
&~=\sum_{\wVec \in \pw}\genVParam{\wVec}^2 \cdot \expect{\big|~ \{\wVecPrime \st \wVecPrime \neq \wVec, \sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}\} ~\big|}\nonumber\\%\numWorldsP
2019-08-15 08:55:08 -04:00
&~=\norm{\genV}^2_2\cdot \left(\frac{|\pw|}{\sketchCols} - 1\right)\label{eq:spaceOne}
2019-08-14 21:30:38 -04:00
\end{align}
\begin{align}
&\expect{ \sum_{\substack{\wVec, \wVecPrime \in \pw \st \\
\wVec \neq \wVecPrime,\\
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\genVParam{\wVec}\cdot\kMapParam{\wVecPrime}}\nonumber \\
&~= \expect{\sum_{\wVec \in \pw}\genVParam{\wVec} \cdot \sum_{\substack{\wVecPrime \in\pw \st\\
\wVecPrime \neq \wVec,\\
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\genVParam{\wVecPrime}} \nonumber \\
%\numWorldsP \cdot \frac{\numWorldsP - 1}{\sketchCols}\label{eq:spaceTwo}.
&~= \expect{\sum_{\wVec \in \pw}\genVParam{\wVec} \cdot \big((\sum_{\substack{\wVecPrime \in\pw \st\\
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}} }\genVParam{\wVecPrime } )- \genVParam{\wVec}\big)} \nonumber \\
2019-08-15 08:55:08 -04:00
&~=\expect{\left(\sum_{\wVec \in \pw}\genVParam{\wVec} \cdot \sum_{\substack{\wVecPrime \in \pw \st \\
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\genVParam{\wVecPrime}\right) - \sum_{\wVec \in \pw}\genVParam{\wVec}^2}\nonumber\\
&~=\expect{\sum_{\wVec \in \pw}\genVParam{\wVec} \cdot \sum_{\substack{\wVecPrime \in \pw \st \\
2019-08-15 08:55:08 -04:00
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\genVParam{\wVecPrime}} - \expect{\sum_{\wVec \in \pw}\genVParam{\wVec}^2}\nonumber \\
2019-08-14 21:30:38 -04:00
&~\leq\norm{\genV}_1 \cdot \frac{\norm{\genV}_1}{\sketchCols} - \expect{\sum_{\wVec \in \pw}\genVParam{\wVec}^2}\nonumber \\
&~\leq\frac{\norm{\genV}_1^2 - \norm{\genV}_2^2}{\sketchCols} \label{eq:spaceTwo}.
%&\norm{\genV}\prob \cdot \frac{\norm{\genV}\prob - \frac{\norm{\genV}}{\numWorlds}}{\sketchCols}\label{eq:spaceTwo}.
2019-06-10 13:36:43 -04:00
\end{align}
2019-08-15 08:55:08 -04:00
\AH{Add some verbose justification and assumptions.}
%In both equations, the sum of $\genVParam{\wVec}$ over all $\wVec \in \pw$ is $\numWorldsP$ since as noted in equation \eqref{eq:mu} we are summing the number of worlds a tuple $t$ appears in, and for a TIPDB, that is exactly 2 to the power of the number of tuples in the TIPDB (due to the independence of tuples) times tuple $t$'s probability.
2019-08-14 21:30:38 -04:00
Note that when $\genV$ is positive, the bound is tight.
2019-07-09 16:41:58 -04:00
2019-08-14 21:30:38 -04:00
In equation \eqref{eq:spaceOne} we have the multiplicative factor which in expectation turns out to be the number of worlds $|\pw|$ divided evenly across the number of buckets $\sketchCols$ minus the one tuple that $\wVecPrime$ cannot be. This factor is multiplied to the sum of squares of each of the world values.
2019-08-15 08:55:08 -04:00
Equation \eqref{eq:spaceTwo} has each of the $|\pw|$ worlds times all the rest of the worlds appearing in the corresponding bucket. The equation is first rearranged, by allowing the duplicating the $\wVec$ in the second summation and subsequently subtracting the product afterwards. The product in the expectation yiellds two factors. The first factor is simply the sum of vector values. The latter is the same sum divided by bucket size. Finally, we subtract the quantity that shouldn't be there, specifically when $\wVecPrime = \wVec$, which is the sum of squares within a bucket.
2019-08-15 09:55:09 -04:00
2019-07-09 16:41:58 -04:00
2019-08-15 08:55:08 -04:00
\eqref{eq:spaceOne} and \eqref{eq:spaceTwo} together form
2019-08-15 09:55:09 -04:00
\begin{align}
&\norm{\genV}^2_2\left(\frac{|\pw|}{\sketchCols}- 1\right) + \frac{\norm{\genV}_1^2 - \norm{\genV}_2^2}{\sketchCols}\\
& < \frac{\norm{\genV}_2^2\left(|\pw|\right) + \norm{\genV}_1^2}{\sketchCols} \label{eq:variance}
\end{align}
2019-06-12 08:39:03 -04:00
By \eqref{eq:variance} we have then
\begin{align*}
%\varSym &< 2^{2N}\big(\frac{2\prob}{\sketchCols}\big) \\
2019-08-15 09:55:09 -04:00
\varSym &< \frac{\norm{\genV}_2^2\left(|\pw|\right) + \norm{\genV}_1^2}{\sketchCols} \\
%\sd &<\sdEq\\
2019-08-15 09:55:09 -04:00
\sd &< \sqrt{\frac{\norm{\genV}_2^2\left(|\pw|\right) + \norm{\genV}_1^2}{\sketchCols}} \\
%\sdRel& < \sqrt{\frac{2}{\sketchCols\prob}}.
2019-08-15 09:55:09 -04:00
\sdRel &< \frac{\sqrt{\norm{\genV}_2^2\left(|\pw|\right) + \norm{\genV}_1^2}}{\sqrt{\sketchCols}\cdot\norm{\genV}_1}
2019-06-12 08:39:03 -04:00
\end{align*}
2019-08-15 08:55:08 -04:00
Recall that $\sdRel = \frac{\sd}{\mu}$.% where $\mu$ is defined as $\numWorldsP$ in \eqref{eq:mu} for TIDB and $\norm{\genV}\prob$ for general $\genV$ in \eqref{eq:gen-mu}.
2019-06-14 10:50:38 -04:00
Since the sketch has multiple trials, a probability of exceeding error bound $\errB$ smaller than one half guarantees an estimate that is less than or equal to the error bound when taking the median of all trials. Expressing the error relative to $\mu$ in Chebyshev's Inequality yields
2019-06-12 08:39:03 -04:00
\begin{equation*}
Pr\left[~|X - \mu|~> \Delta\right] < \frac{1}{3}.
%\cheby.
2019-06-12 08:39:03 -04:00
\end{equation*}
2019-07-09 16:41:58 -04:00
Substituting $\Delta = k\sigma \rightarrow k = \frac{\Delta}{\sigma} \rightarrow k^2 = \frac{\Delta^2}{\sigma^2}$ we have
\begin{equation*}
Pr\left[~|X - \mu|~> \Delta~\right] < \frac{\sigma^2}{\Delta^2}
\end{equation*}
2019-08-15 09:55:09 -04:00
\AH{This next bit needs to be redone.}
2019-07-09 16:41:58 -04:00
For the case when $\Delta = \mu\epsilon$, taking both Chebyshev bounds, setting them equal to each other, simplifying and solving for $\sketchCols$ results in
2019-06-12 08:39:03 -04:00
\begin{align*}
2019-07-09 16:41:58 -04:00
\frac{\sigma^2}{\Delta^2} &= \frac{1}{3}\\
\frac{ 2^{2N}\big(\frac{2\prob}{\sketchCols}\big)}{\mu^2\epsilon^2} &= \frac{1}{3}\\
\frac{2^{2N + 1}\prob}{\mu^2\epsilon^2\sketchCols} &= \frac{1}{3}\\
\frac{6 \cdot 2^{2N}\prob}{\mu^2\epsilon^2} &= \sketchCols \\
2019-07-09 16:41:58 -04:00
\frac{6}{p\epsilon^2} &= \sketchCols.
2019-06-12 08:39:03 -04:00
\end{align*}
2019-08-15 09:55:09 -04:00
In the above, recall that $\mu$ or the expectation of an estimate is $\sum\limits_{\wVec \in \pw}\genVParam{\wVec}$ as seen in equation \eqref{eq:allWorlds-est}.
Setting $\Delta = \epsilon\numWorlds$ gives
\begin{align*}
\frac{ 2^{2N}\big(\frac{2\prob}{\sketchCols}\big)}{\epsilon^22^{2N}} &= \frac{1}{3}\\
\frac{2^{2N+ 1}\prob}{\epsilon^22^{2N}\sketchCols} &= \frac{1}{3}\\
\frac{6 \cdot 2^{2N}\prob}{\epsilon^22^{2N}} &= \sketchCols \\
\frac{6\prob}{\epsilon^2} &= \sketchCols.
\end{align*}
2019-07-09 16:41:58 -04:00
Other cases for $\Delta$ can be solved similarly.
2019-06-10 13:36:43 -04:00
2019-06-05 11:57:05 -04:00
2019-06-14 10:50:38 -04:00