Hash Construction, Exact Value of gamma, alg for gamma

master
Aaron Huber 2019-07-15 11:59:08 -04:00
parent a9cd6bd55c
commit a3cc2bce7c
6 changed files with 115 additions and 32 deletions

View File

@ -15,8 +15,8 @@ To verify this claim, we argue that the expectation of the estimate of a tuple's
\expect{\sketchJParam{\sketchHashParam{\wVec}}\cdot \sketchPolarParam{\wVec}} = \kMapParam{\wVec} \label{eq:single-est}.
\end{equation}
\AR{While the analysis below is correct, the way it is stated it seems to `come out of the blue.' I would recommend that you re-structure the argument below as follows. First argue that $\expect{\sketch[i][\sketchHash[\wVec]]\cdot s_i[\wVec]}=v_t[\wVec]$. From this the claim below just follows by linearity of expectation but this result is a good thing for the reader to realize. Also instead of summing over $j\in [B],\wVec|h_i[\wVec]=j,\wVec'|h_i[\wVec']=j$ it would be better to just write it as sum over all $\wVec,\wVec'\in W\text{ s.t. }h_i[\wVec]=h_i[\wVec']$-- the latter is bit more compact and it is easier to comprehend as well.}
\AH{Proof changed as suggested above. I aired on the verbose side for the sake of clarity.}
%\AR{While the analysis below is correct, the way it is stated it seems to `come out of the blue.' I would recommend that you re-structure the argument below as follows. First argue that $\expect{\sketch[i][\sketchHash[\wVec]]\cdot s_i[\wVec]}=v_t[\wVec]$. From this the claim below just follows by linearity of expectation but this result is a good thing for the reader to realize. Also instead of summing over $j\in [B],\wVec|h_i[\wVec]=j,\wVec'|h_i[\wVec']=j$ it would be better to just write it as sum over all $\wVec,\wVec'\in W\text{ s.t. }h_i[\wVec]=h_i[\wVec']$-- the latter is bit more compact and it is easier to comprehend as well.}
%\AH{Proof changed as suggested above. I aired on the verbose side for the sake of clarity.}
For a given $\wVec \in \pw$, substituting definitions we have
\begin{align*}
&\expect{\sketchJParam{\sketchHashParam{\wVec}} \cdot \sketchPolarParam{\wVec}} = \nonumber\\
@ -67,8 +67,8 @@ We can now take \eqref{eq:single-est}, substitute it in for \eqref{eq:allWorlds-
%=& \estExp \label{eq:estExpect}
%\end{align}
\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.}
%\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.}
For the next step, we show that the variance of an estimate is small.%$$\varParam{\estimate}$$
@ -86,15 +86,15 @@ For the next step, we show that the variance of an estimate is small.%$$\varPara
}}\kMapParam{\wVec_1} \kMapParam{\wVec_2}\sketchPolarParam{\wVec_1}\sketchPolarParam{\wVec_2}\sketchPolarParam{\wVecPrime_1}\sketchPolarParam{\wVecPrime_2}\big]\nonumber\\
&\qquad - \left(\sum_{\wVec \in \pw}\kMapParam{\wVec}\right)^2 \label{eq:var-sum-w}.
\end{align}
\AR{The $-\mu^2$ term is missing in the above.}
\AH{$\mu^2$ added.}
%\AR{The $-\mu^2$ term is missing in the above.}
%\AH{$\mu^2$ added.}
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,
\begin{equation}
\sketchPolarParam{\wa}\cdot\sketchPolarParam{\wb}\cdot\sketchPolarParam{\wc}\cdot\sketchPolarParam{\wVecD} \label{eq:polar-product}
\end{equation}
we make some key observations.%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$.
\AR{I do not know what you mean by ``iteration"} \AH{I don't know how to word what I am saying any better...by iteration I mean if you pictured the summation as nested for loops, one could have one level of nesting, where the outer loop would be iterating over the set $\pw$ and the inner loop would be iterating over a separate set of $\pw$. However, maybe this is unnecessary to point out, and for now I have commented this out.}
%\AR{I do not know what you mean by ``iteration"} \AH{I don't know how to word what I am saying any better...by iteration I mean if you pictured the summation as nested for loops, one could have one level of nesting, where the outer loop would be iterating over the set $\pw$ and the inner loop would be iterating over a separate set of $\pw$. However, maybe this is unnecessary to point out, and for now I have commented this out.}
Thus, there are five possible sets of $\wVec$ variable combinations, namely for $a, b, c, d \in \{1, 1', 2, 2'\} \st a \neq b \neq c \neq d$:
\begin{align*}
@ -106,8 +106,8 @@ Thus, there are five possible sets of $\wVec$ variable combinations, namely for
\end{align*}
Note that each $\wVec$ is the preimage of the same $\sketchPolar$ function, meaning, that equal worlds produce the same element in the image of $\sketchPolar$.
%In $\distPattern{1}$, it is the case that if all $\wVec$ variables are equal, that we have only one possible combination of the four $\wVec$ vectors. For $\distPattern{2}$ and $\distPattern{3}$, there are $\binom{4}{2} = 6$ possible inequalities. However, note that no matter which world vectors are equal (unequal), we still end up with a positive polarity for $\distPattern{2}$ since, for each group of equal worlds, we have the same image of $\sketchPolar$ multiplied together, resulting in a product of 1 for each group, multiplied together.
\AR{Two comments on the notation above. You should define the sets exactly-- i.e. you should not put a $*$ on some of the definitions. Second, it is not immediately clear why the above cover all the cases, so you should argue that is the case. I think it is easier to argue this is you argue in terms of number of inequalities in the possible $\binom{4}{2}=6$ comparisons-- note you probably should not write down all the 6 comparisons since that would be cumbersome: just use it in your argument.}
\AH{I have defined the sets exactly. For the second comment, I argue later on the fact that all cases are covered. This second comment was a tough one for me to understand clearly, but I think I got it. Please let me know if I didn't}
%\AR{Two comments on the notation above. You should define the sets exactly-- i.e. you should not put a $*$ on some of the definitions. Second, it is not immediately clear why the above cover all the cases, so you should argue that is the case. I think it is easier to argue this is you argue in terms of number of inequalities in the possible $\binom{4}{2}=6$ comparisons-- note you probably should not write down all the 6 comparisons since that would be cumbersome: just use it in your argument.}
%\AH{I have defined the sets exactly. For the second comment, I argue later on the fact that all cases are covered. This second comment was a tough one for me to understand clearly, but I think I got it. Please let me know if I didn't}
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
\begin{align}
@ -137,8 +137,8 @@ because the same element of the image of $\sketchPolar$ is being multiplied to i
%\st \cFive}}
\polarProdEq} = 0. \nonumber
\end{align}
\AR{You should argue why each of the equalities above. While we might decide to drop the arguments in the submitted paper when we are working things out, it is better to write down all the arguments. This is the best way to spot bugs in a proof. Otherwise, it is easy to introduce bugs by not checking for things that are ``obvious."}
\AH{Thank you for explaining the process to me. It makes sense to include 'obvious' arguments to me now. I have argued the above points, but mostly in plain English. Is this acceptable, or do I need to use formal notation?}
%\AR{You should argue why each of the equalities above. While we might decide to drop the arguments in the submitted paper when we are working things out, it is better to write down all the arguments. This is the best way to spot bugs in a proof. Otherwise, it is easy to introduce bugs by not checking for things that are ``obvious."}
%\AH{Thank you for explaining the process to me. It makes sense to include 'obvious' arguments to me now. I have argued the above points, but mostly in plain English. Is this acceptable, or do I need to use formal notation?}
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
@ -161,8 +161,8 @@ For the distribution pattern $\cTwo$, we have three subsets $\distPattern{21}, \
&\distPattern{22}:&\cTwoV{\wOne}{\wTwo}{\wOneP}{\wTwoP}\\
&\distPattern{23}:&\cTwoV{\wOne}{\wTwoP}{\wOneP}{\wTwo}
\end{align*}
\AR{Again you should be defining sets and not variants. E.g. you could have defined the subsets $S_{21},S_{22},S_{23}$.}
\AH{Thank you for the great suggestion. Is it a problem that I have waited to define these subsets explicitly until here?}
%\AR{Again you should be defining sets and not variants. E.g. you could have defined the subsets $S_{21},S_{22},S_{23}$.}
%\AH{Thank you for the great suggestion. Is it a problem that I have waited to define these subsets explicitly until here?}
Considered separately, the subsets result in the following $\var$.
\begin{align}
&\wOne = \wOneP \neq \wTwo =\wTwoP \rightarrow\nonumber\\
@ -188,15 +188,15 @@ Considered separately, the subsets result in the following $\var$.
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 $\kMap{t}$ terms.
\AR{You should again argue each of the claimed equalities above. Actually in the second equality, the term $|h_i[\wVec]=h_i[\wVec']|$ should really be $|\{\wVec'|h_i[\wVec]=h_i[\wVec']\}|$. Also this change needs to be propagated.}
\AH{I have added both formal equations (to show the step by step evaluation) as well as verbose justification in English. Please let me know if I can be more clear in arguing the equalities.}
%\AR{You should again argue each of the claimed equalities above. Actually in the second equality, the term $|h_i[\wVec]=h_i[\wVec']|$ should really be $|\{\wVec'|h_i[\wVec]=h_i[\wVec']\}|$. Also this change needs to be propagated.}
%\AH{I have added both formal equations (to show the step by step evaluation) as well as verbose justification in English. Please let me know if I can be more clear in arguing the equalities.}
\AR{Also while I do like the use of macros, I think you have gone over-board in the other direction. It is good to create macros for symbols/variables names that you will use frequently but using macros for entire expressions is not a good idea. Among others, it makes it really hard for others to read it since they have to refer back to your macro definition each time they see it.}
\AH{I think I have most of them taken care of.}
%\AR{Also while I do like the use of macros, I think you have gone over-board in the other direction. It is good to create macros for symbols/variables names that you will use frequently but using macros for entire expressions is not a good idea. Among others, it makes it really hard for others to read it since they have to refer back to your macro definition each time they see it.}
%\AH{I think I have most of them taken care of.}
Notice that the second term (expectation \eqref{eq:estExpect} squared) of the $\var$ calculation is cancelled out by \eqref{eq:distPatOne} and \eqref{eq:variantOne}. \AR{You should {\bf not} start with a {\em wrong} expression and then later on correct it. Start off with the correct expression in the first place: otherwise it just creates more confusion.}
\AH{This has been fixed.}
Notice that the second term (expectation \eqref{eq:estExpect} squared) of the $\var$ calculation is cancelled out by \eqref{eq:distPatOne} and \eqref{eq:variantOne}. %\AR{You should {\bf not} start with a {\em wrong} expression and then later on correct it. Start off with the correct expression in the first place: otherwise it just creates more confusion.}
%\AH{This has been fixed.}
\begin{equation*}
\big(\sum_{\wVec \in \pw}\kMapParam{\wVec}\big)^2 = \sum_{\wVec \in \pw}\kMapParam{\wVec}^2 +
\sum_{\substack{\wVec, \wVecPrime \in \pw \st\\
@ -211,8 +211,8 @@ With only \eqref{eq:variantTwo} and \eqref{eq:variantThree} remaining, we have
\wVec \neq \wVecPrime,\\
\sketchHashParam{\wVec} = \sketchHashParam{\wVecPrime}}}\kMapParam{\wVec}\cdot\kMapParam{\wVecPrime}}.
\end{multline*}
\AR{The expectations are missing on the RHS. And this needs to be propagated.}
\AH{Fixed.}
%\AR{The expectations are missing on the RHS. And this needs to be propagated.}
%\AH{Fixed.}
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 we have
\begin{align}
&\expect{\sum_{\substack{\wVec, \wVecPrime \in \pw \st\\
@ -226,8 +226,8 @@ In both equations, the sum of $\kMapParam{\wVec}$ over all $\wVec \in \pw$ is $\
In equation \eqref{eq:spaceOne} we have the multiplicative factor which in expectation turns out to be the number of worlds $\numWorlds$ divided evenly across the number of buckets $\sketchCols$ minus the one tuple that $\wVecPrime$ cannot be. This factor is multiplied to each of the $\numWorldsP$ worlds that $t$ appears in.
Equation \eqref{eq:spaceTwo} has each of the $\numWorldsP$ worlds times all the rest of the worlds that tuple $t$ appears in within that bucket. This factor is represented by $\frac{\numWorldsP - 1}{\sketchCols}$, i.e. we have a world in a given bucket $j$ in which tuple $t$ appears, being summed over each of its products with other worlds in which it is present in bucket $j$.
\AR{Again, argue why the above claims are true.}
\AH{All my arguing is plain English. Is there a better way to go about this?}
%\AR{Again, argue why the above claims are true.}
%\AH{All my arguing is plain English. Is there a better way to go about this?}
\eqref{eq:spaceOne} and \eqref{eq:spaceTwo} further reduce to
\begin{equation}
\frac{2^{2N}(\prob + \prob^2)}{\sketchCols} - \numWorlds(\frac{\prob}{\sketchCols} + \prob)\label{eq:variance}
@ -249,8 +249,8 @@ Substituting $\Delta = k\sigma \rightarrow k = \frac{\Delta}{\sigma} \rightarrow
\begin{equation*}
Pr\left[~|X - \mu|~> \Delta~\right] < \frac{\sigma^2}{\Delta^2}
\end{equation*}
\AR{It would be better to state the deviation as say $\Delta$ instead of $\epsilon\mu$. Then derive the expression for $B$ in terms of $N,p,\Delta$. Then you can state as consequences what values of $B$ you get for the special cases of $\Delta=\epsilon\cdot 2^N$ and $\Delta=\epsilon\mu$.}
\AH{Done.}
%\AR{It would be better to state the deviation as say $\Delta$ instead of $\epsilon\mu$. Then derive the expression for $B$ in terms of $N,p,\Delta$. Then you can state as consequences what values of $B$ you get for the special cases of $\Delta=\epsilon\cdot 2^N$ and $\Delta=\epsilon\mu$.}
%\AH{Done.}
For the case when $\Delta = \mu\epsilon$, taking both Chebyshev bounds, setting them equal to each other, simplifying and solving for $\sketchCols$ results in
\begin{align*}
\frac{\sigma^2}{\Delta^2} &= \frac{1}{3}\\

31
exact.tex Normal file
View File

@ -0,0 +1,31 @@
% -*- root: main.tex -*-
\section{Exact Results}
\label{sec:exact}
We turn to computing the exact values of $\sum\limits_{\wVec, \wVecPrime \in \pw} \sketchJParam{\sketchHashParam{\wVec}} \cdot \sketchPolarParam{\wVecPrime}.$ Starting with the term $\gIJ = \sum\limits_{\wVecPrime \in \pw}\sketchPolarParam{\wVecPrime}$, by the definition of $\sketchPolar$ and the property of associativity in addition, we can break the sum into
\begin{equation*}
\gIJ = \sum_{\substack{\wVecPrime \in \pw \st\\
\sketchPolarParam{\wVecPrime} = 0}} 1 + \sum_{\substack{\wVecPrime \in \pw \st\\
\sketchPolarParam{\wVecPrime} = 1}} -1.
\end{equation*}
Setting the terms to $T_1 = \sum_{\substack{\wVecPrime \in \pw \st\\
\sketchPolarParam{\wVecPrime} = 0}} 1$ and $T_2 = \sum_{\substack{\wVecPrime \in \pw \st\\
\sketchPolarParam{\wVecPrime} = 1}} -1$ and fixing $\buck$ to a specific value, gives a system of linear equations for each term. It is a known result for a consistent multiplication that the number of solutions are $| \kDom |^{\numTup - rank(\matrixH')}$. This gives us an exact calculation for both terms,
\begin{align*}
T_1 \in \{0, 2^{\numTup - rank(\matrixH')}\},\\
T_1 \in \{0, 2^{\numTup - rank(\matrixH')}\}.
\end{align*}
\subsection{Algorithm for $\gIJ$}
\begin{algorithmic}
\If {$\matrixH' \cdot \wVec = j^{(0)}$ is consistent}
\If {$\matrixH' \cdot \wVec = j^{(1)}$ is consistent}
\State $\gIJ = 0$
\Else
\State $\gIJ = 2^{computeRank(\matrixH')}$
\EndIf
\ElsIf{$\matrixH' \cdot \wVec = \buck^{(1)}$ is consistent}
\State $\gIJ = 2^{computeRank(\matrixH')}$
\Else
$\gIJ = 0$
\EndIf.
\end{algorithmic}

33
hash_const.tex Normal file
View File

@ -0,0 +1,33 @@
% -*- root: main.tex -*-
\section{Hash Function Construction}
As with world identification, bucket identification can be viewed as a binary vector. This vector is of length $\lenB = \log\sketchCols$, where $\buck \in \{0, 1\}^\lenB$. Similarly, we can define a set of hash vectors $\matrixH$ as a matrix of $\lenB$ precomputed vectors $\hVec$ where each $\hVec \in \{0, 1\}^\numTup$, formally
\begin{equation*}
\begin{pmatrix*}[l]
h_{i, 0, 0}&\cdots &h_{0, \numTup} \\
\vdots \\
h_{i, \lenB, 0} &\cdots &h_{\lenB, \numTup}\\
\end{pmatrix*}.
\end{equation*}
The row hash function $\sketchHash$ that maps input to buckets is defined as the multiplication of the matrix $\matrixH \cdot \wVec = \jVec$ , as
\begin{equation*}
\hVecMatrix \cdot \vecCol{w} = \vecCol{j},
\end{equation*}
or equivalently
\begin{equation*}
\sketchHash = \buck = \forall i \in [\lenB], \buck_i = \langle\textbf{h}_i, \wVec\rangle
\end{equation*}
Polarity function $\sketchPolar$ is analogously defined as the inner product of a precomputed vector (abusing notation) $\mathbf{\sketchPolar}$ and $\wVec$,
\begin{equation*}
\sketchPolar = \langle\mathbf{\sketchPolar}, \wVec\rangle
\end{equation*}
Finally, we augment $\matrixH$ to $\matrixH$' by adding $\mathbf{\sketchPolar}$ as an additional row in $\matrixH$
\begin{equation*}
\matrixH' = \begin{pmatrix*}[l]
h_{i, 0, 0}&\cdots &h_{0, \numTup} \\
\vdots \\
h_{i, \lenB, 0} &\cdots &h_{\lenB, \numTup}\\
s_{i, 0} &\cdots &s_{i, \numTup}
\end{pmatrix*}.
\end{equation*}
Note that this also turns $\buck$ into a $b + 1$ size column vector, with the last element being the polarity of the hashed world vector.

View File

@ -14,6 +14,23 @@
\newcommand{\sketchHashParam}[1]{\sketchHash\paramBox{#1}}
\newcommand{\sketchPolar}[1][i]{s_{#1}}
\newcommand{\sketchPolarParam}[1]{\sketchPolar\paramBox{#1}}
\newcommand{\gIJ}{\gamma\paramBox{i}\paramBox{j}}
\newcommand{\buck}{\textbf{j}}
\newcommand{\jVec}{\textbf{j}}
\newcommand{\lenB}{b}
%\newcommand{\log}{log}
\newcommand{\hVec}{\textbf{h}_{i,k}}
\newcommand{\matrixH}{H}
\newcommand{\hVecMatrix}{\begin{pmatrix*}[l]
h_{i, 0, 0}&\cdots &h_{0, \numTup} \\
\vdots \\
h_{i, \lenB, 0} &\cdots &h_{\lenB, \numTup}
\end{pmatrix*}}
\newcommand{\vecCol}[1]{\begin{pmatrix}
{#1}_0 \\
\vdots \\
{#1}_{\numTup}
\end{pmatrix}}
%
%TIDB
%

View File

@ -1,6 +1,7 @@
\documentclass[sigconf]{acmart}
\usepackage{algpseudocode}
\usepackage{comment}
\usepackage{amsmath}
\usepackage{amssymb}
@ -124,7 +125,8 @@
\input{notation}
\input{analysis}
%\input{}
\input{hash_const}
\input{exact}
%\input{}
%\input{}

View File

@ -2,11 +2,11 @@
\section{Notation}
\label{sec:notation}
The following notation is used to reason about the sketching of world membership for a given tuple. We denote the set of all possible worlds as $\pw$. A given sketch $\sketch$ can be viewed as an $\sketchRows \times \sketchCols$ matrix, i.e. a matrix with $\sketchRows$ rows and $\sketchCols$ columns. Each row of $\sketch$ is an estimation of the $\kDom$ frequency for a given tuple represented by $\sketch$ across all possible worlds. \AR{Nitpick: the claim in the last sentence is only true at initialization. If you add/mult the vector (via aggregates) then the claim is no longer true.}
\AH{I am not sure if I know you what mean that the claim is no longer true: do you mean that it is no longer true until we prove bounds for multiplication? We can add sketches with the same epsilom delta bounds, correct? OR do you mean that the tuple which the $\sketch$ represents is a different tuple than the one we started with (after performing add/mult operations on it.}
The following notation is used to reason about the sketching of world membership for a given tuple. We denote the set of all possible worlds as $\pw$. A given sketch $\sketch$ can be viewed as an $\sketchRows \times \sketchCols$ matrix, i.e. a matrix with $\sketchRows$ rows and $\sketchCols$ columns. Upon initialization each row of $\sketch$ is an estimation of the $\kDom$ frequency for a given tuple represented by $\sketch$ across all possible worlds. %\AR{Nitpick: the claim in the last sentence is only true at initialization. If you add/mult the vector (via aggregates) then the claim is no longer true.}
%\AH{I am not sure if I know you what mean that the claim is no longer true: do you mean that it is no longer true until we prove bounds for multiplication? We can add sketches with the same epsilom delta bounds, correct? OR do you mean that the tuple which the $\sketch$ represents is a different tuple than the one we started with (after performing add/mult operations on it.}
\AR{In this section, the notations $\sketchHash{i}$ and $\sketchPolar{i}$ in this section are messed up.}
\AH{Fixed.}
%\AR{In this section, the notations $\sketchHash{i}$ and $\sketchPolar{i}$ in this section are messed up.}
%\AH{Fixed.}
To facilitate binning the $\kDom$ values for a given world $\wVec$, each row has two pairwise independent hash functions $\sketchHash[i]:\pw \to [B]$ and $\sketchPolar[i]:\pw \to \{-1,1\}$, where all functions are independent of one another. Finally, the function $\kMap{t}$ defined as $\kMap{t} : \{0, 1\}^\numTup \rightarrow \kDom$ is used to determine the tuple's $\kDom$ annotation for a given world.
%\AR{I do not like this notation. I prefer vectors being typeset in bold, i.e. $\mathbf{w}$. $\wVec$ is good for writing on the board but it is more standard to bold vectors in linear algebra. Also the $\kDom$ values are not binned by $\sketchHash{i}$ but the actual $\wVec$s are.}
@ -19,8 +19,8 @@ To facilitate binning the $\kDom$ values for a given world $\wVec$, each row has
When a world $\wVec$'s $\kDom$ value is updated, it's $\kDom$ value is first retrieved via $\kMap{t}$ and then multiplied by the output of the $i^{th}$ row's polarity function $\sketchPolar$. The resulting computation is then added to the current value contained in the bin mapping. Formally:
$$\sketch[i][\sketchHashParam{\wVec}] ~+=~ \sketchPolarParam{\wVec} \times \kMapParam{\wVec}$$
\AR{It would also be good to state what the value in $\sketch[i][j]$ is after the initialization with the function $v_t$ is done.}
\AH{Done.}
%\AR{It would also be good to state what the value in $\sketch[i][j]$ is after the initialization with the function $v_t$ is done.}
%\AH{Done.}
After initialization is complete we have that
$$\sketch[i][j] = \sum_{\{\wVec \st \sketchHashParam{\wVec} = j\}}\kMapParam{\wVec} \sketchPolarParam{\wVec}.$$