SlowGuess/NeurIPS_2023_OCR huggingface dataset:
Next, we compare  $P_{mix}(S)$  and  $P_{y}(S)$  for any subset  $S$ . Let  $F$  denote the event  $\mathcal{B}(x) = \widetilde{LS(f,x)} \geq LS(f,x)$ . Then,  $\frac{P_x(S|F)}{P_{mix}(S|F)} = \frac{\operatorname*{Pr}[Lap(z / \epsilon_2) \in S - \hat{f}(x)]}{\operatorname*{Pr}[Lap(z / \epsilon_2) \in S - \hat{f}(y)]} \geq \exp\left(-\frac{|\hat{f}(y) - \hat{f}(x)|}{z}\epsilon_2\right)$ , where  $z = \widetilde{LS(f,x)}$ . We have that the fraction  $\frac{|\hat{f}(y) - \hat{f}(x)|}{z}$
$$
\begin{array}{l} \leq \frac {1}{z} \max  \{| (1 + \epsilon_ {3}) f (y) - (1 - \epsilon_ {3}) f (x) |, | (1 + \epsilon_ {3}) f (x) - (1 - \epsilon_ {3}) f (y) | \} \\ { = } { \frac { 1 } { z } \operatorname* { m a x } \{ | ( 1 + \epsilon _ { 3 } ) ( f ( y ) - f ( x ) ) + 2 \epsilon _ { 3 } f ( x ) | , | ( 1 - \epsilon _ { 3 } ) ( f ( x ) - f ( y ) ) + 2 \epsilon _ { 3 } f ( x ) | \} } \\ \leq \frac {(1 + \epsilon_ {3}) z + 2 \epsilon_ {3} f (x)}{z}, \text {w i t h p r o b a b i l i t y} 1 - \delta_ {1} \\ \leq 3 + \epsilon_ {3}, \text {w i t h p r o b a b i l i t y} 1 - \delta_ {1}. \\ \end{array}
$$
where the second inequality holds because  $|f(x) - f(y)| \leq LS(f,x) \leq \widetilde{LS(f,x)}$ , with probability  $1 - \delta_1$ .
This implies  $\frac{P_x(S|F)}{P_{mix}(S|F)} \geq e^{-(3 + \epsilon_3)\epsilon_2}$  with probability  $1 - \delta_1$ . Equivalently,  $P_{mix}(S|F) \leq e^{(3 + \epsilon_3)\epsilon_2} P_x(S|F) + \delta_1$ . Therefore,  $P_{mix}(S) = P_{mix}(S \wedge F) + P_{mix}(S \wedge \bar{F}) \leq e^{(3 + \epsilon_3)\epsilon_2} P_x(S) + \delta_1 + \delta_2$ . Putting everything together,  $P_y(S) \leq e^{\epsilon_1} P_{mix}(S) + \delta_1 \leq e^{\epsilon_1 + (3 + \epsilon_3)\epsilon_2} P_x(S) + e^{\epsilon_1} (\delta_1 + \delta_2) + \delta_2$ .
E Estimating higher-order local sensitivity for path counts
Let  $H$  denote paths of length  $\ell$ . We assume the graph  $G$  has degeneracy  $d$  and treewidth  $t$ . We show that  $f^{(k)}(G) = \max_{|S| = k} f_H(G, S)$  can be computed in time  $O(poly(n)(dt)^k)$  under these assumptions on  $G$  (i.e., in time smaller than  $O(n^{2\ell})$ ). Let  $\sigma$  denote a degeneracy ordering of the nodes in  $V$ . So node  $v$  has index  $\sigma(v)$ . Let  $N_{\sigma}(v) = \{v' : v' \in N(v), \sigma(v') > \sigma(v)\}$  be the set of neighbors of  $v$  with index larger than  $\sigma(v)$ ; by definition of degeneracy, it follows that  $|N_{\sigma}(v)| \leq d$  for all  $v$ . Let  $v, u$  be two nodes such that  $\sigma(v) < \sigma(u)$ . Then,  $\mathsf{dist}(v, u, \sigma, K)$  denotes the length of the shortest path from  $v$  to  $u$  in a graph  $K$ , when restricted to nodes  $v'$  with  $\sigma(v) < \sigma(v') < \sigma(u)$ .
Let  $G(\hat{E})$  denote the graph induced by  $E \cup \hat{E}$ . Let  $N_{\sigma}(v, k, \hat{E}) = \{u : \mathrm{dist}(v, u, \sigma, G(\hat{E})) \leq k\}$  be the set of nodes within  $k$ -hops of  $v$  in the graph  $G(\hat{E})$ , restricted to higher index nodes than  $v$ . Let  $G_{\sigma}(v, k, \hat{E})$  denote the graph induced by the subset  $N_{\sigma}(v, k, \hat{E})$  of nodes. We say a pair  $e = (u', v')$  is an internal anchor pair in  $G_{\sigma}(v, k, \hat{E})$ , if  $u', v' \in N_{\sigma}(v, k, \hat{E})$ , and  $(u', v') \notin E(G_{\sigma}(v, k, \hat{E}))$  (i.e.,  $(u', v')$  is a newly added edge); else, we say  $(u', v')$  is an external anchor pair with respect to  $G_{\sigma}(v, k, \hat{E})$ . We will add internal anchor pairs sequentially. Let  $e_i$  be the edge added in the  $i$ th step, and let  $F^{(i)} = \{e_1, \ldots, e_i\}$ .
$k$ -compact subgraph. We define  $(H, D)$  to be a  $k$ -compact subgraph if
-  $H = G_{\sigma}(v, k, F^{(i)})$  for some node  $v$  and subset  $F^{(i)} = \{e_1, \dots, e_i\}$ .
-  $i \leq k$
Figure 6: (Left)  $D = \{r_1, r_2, r_3, r_4\}$ , edges  $(r_1, r_1')$ ,  $(r_2, r_2')$ ,  $(r_3, r_3')$  and  $(r_4, r_4')$  are external anchor edges, while  $(r_5, r_5')$  is an internal anchor edge. Nodes  $s$  and  $t$  are the starting and ending nodes of the path; (Middle)  $D = \{r_1, r_2, r_3\}$ , and  $(r_1, r_1')$ ,  $(r_2, r_2')$ ,  $(r_3, r_3')$  are external anchor edges, while  $(r_5, r_5')$  is an internal anchor edge. Node  $s$  is the starting node of the path, and the path ends at some other node, not in this compact subgraph; (Right)  $D = \{r_1, r_2, r_3, r_4\}$ , edges  $(r_1, r_1')$ ,  $(r_2, r_2')$ ,  $(r_3, r_3')$  and  $(r_4, r_4')$  are external anchor edges, while  $(r_5, r_5')$  and  $(r_6, r_6')$  are internal anchor edges. Paths pass through this compact subgraph, without starting or ending in it.
- The pair  $e_1 = (u_1, v_1)$  is an internal anchor pair in  $G_{\sigma}(v, k, \emptyset)$ . For each  $j = 2, \ldots, i$ , the pair  $e_j = (u_j, v_j)$  is an internal anchor pair in the graph  $G_{\sigma}(v, k, F^{(j-1)} = \{e_1, \ldots, e_{j-1}\})$ .
-  $D$  is a subset of vertices in  $H$ , and is referred to as the set of connectors.
Lemma 22. Let  $(H, D)$  be a  $k$ -compact subgraph. Then  $H$  has  $O(kd^{k})$  nodes and edges. and the tuple  $(H, D)$  can be described using  $O(k^{2}d^{k + 1}\log d)$  bits.
Proof. (Sketch) We prove by induction on  $i$  that  $G_{\sigma}(v,k,F^{(i)})$  has at most  $(i + 1)d^{k}$  nodes and edges.
First observe that  $N_{\sigma}(v,k,\emptyset)$  has at most  $d^{k}$  nodes and edges, since that all have index more than  $\sigma(v)$ . We have  $i = 1$  as the base case. Let  $\sigma(u_{1}) < \sigma(v_{1})$ . Then  $G_{\sigma}(v,k,\{e_{1}\})$  will have at most  $2d^{k}$  more nodes, with at most  $d^{k}$  additional reachable nodes through  $v_{1}$ . In the inductive step,  $G_{\sigma}(v,k,F^{(i)} = \{e_{1},\ldots,e_{i}\})$  has at most  $d^{k}$  nodes (through  $v_{i}$ , assuming  $\sigma(u_{i}) < \sigma(v_{i})$ ) in addition to those in  $G_{\sigma}(v,k,F^{(i-1)})$ .
The neighborhood of each node  $u \in N_{\sigma}(v, k, F^{(i)})$  can be represented in  $O(d \log (kd^k))$  bits. Therefore, the total number of bits needed to specify  $H$  is  $O(kd^k d \log (kd^k)) = O(kd^{k+1} \log (kd^k))$ .  $D$  consists of at most  $k$  nodes from  $N_{\sigma}(v, k, F^{(i)})$ ; therefore,  $D$  can be specified in  $O(k \log (kd^k))$  bits. Therefore,  $(H, D)$  can be specified in  $O(kd^{k+1} \log (kd^k))$  bits, which implies the number of distinct  $(H, D)$  pairs is at most  $\exp (kd^{k+1} \log (kd^k))$ .
Pairing of connector set. The connector set  $D = \{r_1, \dots, r_\ell\}$ , with  $\ell \leq k$ , represents nodes which have incident edges outside the compact subgraph  $H$ . We might have to consider three kinds of paths, corresponding to Figure 6
1. As in Figure 6 (Left), these start at a node  $s$  in  $H$ , then pass through multiple anchor edges, and end at a node  $t$  in  $H$ . We partition  $D$  into two singletons and multiple pairs  $\pi_2(D) = \{(r_{\pi(1)}, (r_{\pi(2)}, r_{\pi(3)}), \ldots, (r_{\pi(\ell)})\}$ . This corresponds to paths which leave  $H$  at node  $r_{\pi(1)}$  and finally return at node  $r_{\pi(\ell)}$ , with disjoint segments from  $r_{\pi(2j)}$  to  $r_{\pi(2j+1)}$  lying within  $H$ , for each  $j$ . We refer to the set of such pairings as  $\Pi_2(D)$ .
2. This corresponds to paths which start at a node  $s$  in  $H$ , then pass through multiple anchor edges, and don't return to a node in  $H$  eventually (as in Figure 6 (Middle)). We partition  $D$  into one singleton and multiple pairs  $\pi_1(D) = \{(r_{\pi(1)}, (r_{\pi(2)}, r_{\pi(3)}), \ldots, (r_{\pi(\ell-1)}, r_{\pi(\ell)})\}$ . We refer to the set of such pairings as  $\Pi_1(D)$ .
3. This corresponds to paths which only pass through nodes in  $H$  (as in Figure 6 (Right)). We partition  $D$  into multiple pairs  $\pi_0(D) = \{(r_{\pi(1)}, r_{\pi(2)}), \ldots, (r_{\pi(\ell-1)}, r_{\pi(\ell)})\}$ . We refer to the set of such pairings as  $\Pi_0(D)$ .
Approximate counts corresponding to pairings. Note that for a given compact subgraph  $(H, D)$ , there can be multiple pairings in  $\Pi_0(D), \Pi_1(D), \Pi_2(D)$ . For each such pairing, e.g.,  $\pi \in \Pi_0(D) = \{(r_{\pi(1)}, r_{\pi(2)}), \ldots, (r_{\pi(\ell-1)}, r_{\pi(\ell)})\}$ , we can guess a set of tuples of numbers  $\mathrm{Num}(\pi, \hat{E}) = \{(\mathrm{Num}(r_{\pi(2j+1)}, r_{\pi(2j+2)}), j = 0, 1, \ldots)\}$ , where
-  $\operatorname{Num}(r_{\pi(2j+1)}, r_{\pi(2j+2)})$  corresponds to the number of segments from  $r_{\pi(2j+1)}$  to  $r_{\pi(2j+2)}$ , which are within  $H$ , and use some edges from  $\hat{E}$  as internal anchor edges
- The path segments counted in  $\mathrm{Num}(r_{\pi(2j+1)}, r_{\pi(2j+2)})$  and those in  $\mathrm{Num}(r_{\pi(2j'+1)}, r_{\pi(2j'+2)})$  are disjoint. In particular, this means that the internal anchor edges used in these counts are disjoint.
- The paths within a tuple  $((\mathsf{Num}(r_{\pi (2j + 1)},r_{\pi (2j + 2)}),j = 0,1\dots))$  contain all the internal anchor edges in  $\hat{E}$ .
In order to reduce the information complexity, we only keep track of  $\mathsf{Num}(r_{\pi(2j+1)}, r_{\pi(2j+2)})$  approximately as powers of  $(1 + \mu)$  for a small  $\mu \in (0,1)$ ; we denote these approximate counts as  $\widehat{\mathsf{Num}}(r_{\pi(2j+1)}, r_{\pi(2j+2)})$ , and the corresponding tuple of counts by  $(\widehat{\mathsf{Num}}(r_{\pi(1)}, r_{\pi(2)}), \ldots, \widehat{\mathsf{Num}}(r_{\pi(\ell-1)}, r_{\pi(\ell)}))$ .  $\widehat{\mathsf{Num}}(\pi, \hat{E})$  denotes the set of approximate path counts which use the internal anchor edges  $\hat{E}$ . Similarly, approximate counts  $\widehat{\mathsf{Num}}(\pi, \hat{E})$  can be defined for  $\pi \in \Pi_1(D)$  and  $\pi \in \Pi_2(D)$ . Let  $\Pi(D) = \Pi_0(D) \cup \Pi_1(D) \cup \Pi_2(D)$ .
Let  $IA(H)$  denote the set of internal anchor edges in a compact subgraph  $H$ . We refer to a tuple  $(H, D, \Pi(D), \bigcup_{\pi \in \Pi(D)} \widehat{\mathbf{Num}}(\pi, IA(H)))$  as an augmented compact subgraph with approximate counts.
Feasible solutions as a tuple of augmented compact subgraph with approximate counts. We now observe that any feasible solution involving anchoring a subset  $S = \{(i_r, j_r) : r = 1, \ldots, s\}$  of pairs of nodes can be viewed as a set of at most  $k$  disjoint augmented compact subgraphs with approximate counts.
Lemma 23. Any feasible solution  $S = \{(i_r, j_r) : r = 1, \ldots, s\}$ , with  $|S| \leq k$  corresponds to a set of augmented compact subgraphs with approximate counts  $(H_1, D_1, \Pi(D_1), \bigcup_{\pi \in \Pi(D_1)} \widehat{\mathcal{N}um}(\pi, IA(H_1))), \ldots, (H_\ell, D_\ell, \Pi(D_\ell), \bigcup_{\pi \in \Pi(D_\ell)} \widehat{\mathcal{N}um}(\pi, IA(H_\ell))$ , for some  $\ell \leq k$ , such that for every  $j$ ,  $(H_j, D_j)$  consists of nodes with lower index than those in  $(H_{j'}, D_{j'})$ , for  $j < j'$ .
Proof. (Sketch) Consider the set of all paths  $\mathcal{P}$  which are considered, i.e., those which use the edges from  $S$ . Let  $v$  be the node with the minimum index among those in  $\mathcal{P}$ . Consider the graph  $G_{\sigma}(v,k,\emptyset)$ . If any pair  $(i_s,j_s)\in S$  is an internal anchor pair for  $G_{\sigma}(v,k,\emptyset)$ , define  $e_1 = (i_s,j_s)$  (this is added to  $IA(H_1)$ ); this is again repeated if there is another pair  $(i_{s'},j_{s'})$  which is an internal anchor pair for  $G_{\sigma}(v,k,e_1)$ . We stop, when we have a subgraph  $H_{1}$  such that no other pair in  $S$  is an internal anchor pair for  $H_{1}$ . If there is a path  $P\in \mathcal{P}$  with one end point  $u\in V(H_1)$  and other end point outside  $H_{1}$ ,  $u$  will be added to  $D_{1}$ . Finally, we construct pairings and associated approximate counts. If a path  $P$  has a segment  $P'$  from  $r_1\in D_1$  to  $r_2\in D_1$  which is within  $H_{1}$ , we would have  $(r_1,r_2)$  as part of a pairing, and the number of such segments will contribute to the associated counts. Thus a compact subgraph  $(H_{1},D_{1},\Pi (D_{1}),\bigcup_{\pi \in \Pi (D_{1})}\widehat{\mathrm{Num}} (\pi ,IA(H_{1}))$  can be constructed corresponding to the set  $\mathcal{P}$ .
Next, consider the path segments we get once we delete all the segments in  $H_{1}$ . The next compact subgraph is constructed in a similar manner.
Let  $S(G, \sigma, k)$  denote the set of possible augmented compact subgraphs with approximate counts. From Lemma 23, it follows that any feasible solution is an element of  $\bigcup_{k' \leq k} S(G, \sigma, k)^{k'}$ .
Lemma 24. The number of feasible solutions is  $O(\exp (k^k d^{k + 1}\log (kd^k))(k\log n)^{k^2})$ .
Proof. (Sketch) We first bound  $|S(G, \sigma, k)|$ . For each compact subgraph  $(H, D)$ , the number of pairings  $|\Pi(D)|$  is at most  $k^k$ . For each pairing  $\pi \in \Pi(D)$ , there are  $O(\log n)^k$  possible approximate
counts. Therefore,  $|S(G,\sigma,k)| = O(\exp(kd^{k+1}\log(kd^k))(k\log n)^k)$  using Lemma 22. The lemma follows since the number of feasible solutions is at most  $k|S(G,\sigma,k)|^k$ .
Finding a tuple of disjoint augmented compact subgraphs with approximate counts in  $G$ . We now show that we can check in polynomial time if an augmented compact subgraph exists. Thus in time  $O(|S(G, \sigma, k)|poly(n)}$ , we can check which augmented compact subgraphs exist. For a given augmented compact subgraph, the total number of paths can be approximated, which allows us to find the one with the maximum number.
Lemma 25. Suppose we are given a tuple  $M_1, \ldots, M_\ell$ , where  $M_j = (H_j, D_j, \Pi(D_j), \{\widehat{\mathbf{Num}}(\pi), \pi \in \Pi(D_j)\})$ , for some  $\ell \leq k$  such that for every  $j$ ,  $(H_j, D_j)$  consists of nodes with lower index than those in  $(H_{j'}, D_{j'})$ , for  $j < j'$ . It is possible to find a set of nodes  $v_1, \ldots, v_\ell$ , sequence of edges  $F^{(1)}, \ldots, F^{(\ell)}$ , connector sets  $\hat{D}_1, \ldots, \hat{D}_\ell$ , pairings  $\Pi(\hat{D}_1), \ldots, \Pi(\hat{D}_\ell)$ , such that for each  $j$ ,  $H_j = G_\sigma(v_j, k, F^{(j)})$ ,  $\hat{D}_j \subset V(G_\sigma(v_j, k, F^{(j)}))$ , and  $\bigcup_{\pi \in \Pi(\hat{D}_j)} \widehat{\mathbf{Num}}(\pi, IA(H_j)) = \{\widehat{\mathbf{Num}}(\pi), \pi \in \Pi(D_j)\}$  in time  $O(poly(n) \exp(k^k d^{k+1} \log(kd^k))(k \log n)^{k^2}(kd^k)^t)$  if  $G$  has degeneracy  $d$  and treewidth  $t$ .
Proof. (Sketch) We use  $c_{j}$  to denote a color corresponding to  $M_{j}$ . For each node  $v$ , it is possible to decide in time  $O(kd^{k})$  if  $v$  can be colored by  $c_{j}$ , i.e., if there exist  $F^{(j)}, \hat{D}_{j}$  such that  $(G_{\sigma}(v, k, F^{(j)}), \hat{D}_{j}, \bigcup_{\pi \in \Pi(\hat{D}_{j})} \widehat{\mathbf{Num}}(\pi, IA(H_{j})) = M_{j}$ . If  $v$  has color  $c_{j}$ , it has “conflicts” with  $C(v, c_{j}) = V(G_{\sigma}(v, k, F^{(j)}))$ , i.e., we cannot have a node  $u \in C(v, c_{j})$  assigned color  $c_{i}$ . Our goal is to find nodes  $v_{1}, \ldots, v_{\ell}$  such that  $v_{j}$  can be assigned color  $c_{j}$ , and  $v_{j'} \notin C(v_{j}, c_{j})$  for any  $j' \neq j$ . If  $G$  has treewidth  $t$ , we can determine if such a coloring can be done in time  $O(poly(n)(kd^{k})^{t})$  time. The main idea for the dynamic program is the following.
Let  $\mathcal{T} = (\mathcal{V},\mathcal{E})$  denote a tree decomposition of  $G$ . Each "node"  $U\in \mathcal{V}$  is a subset of  $V$ . We construct an information set  $I(U)$  for each  $U\in \mathcal{V}$ , which will allow us to determine possible colors for each node  $v\in U$ , in the following manner.  $I(U)$  consists of a set of possible colorings  $\mathbf{x}$  of  $U$ . We consider only  $\mathbf{x}$  which correspond to colorings in which each color appears at most once;  $\mathbf{x}$  can be viewed as a coloring of the subgraph induced by all the nodes in the subtree of  $\mathcal{T}$  rooted at  $U$ . A coloring  $\mathbf{x}$  specifies for each node  $u\in U$ , and for each  $j$ , an indication of the following: (1) node  $u$  is colored by  $c_{j}$ , (2) node  $u$  is not colored by  $c_{j}$ , but color  $c_{j}$  that can be assigned to it, (3) node  $u$  is not colored by  $c_{j}$ , and, moreover,  $c_{j}$  cannot be assigned to  $u$ . This is because there exists some other node  $u'$  such that  $u\in C(u',c_j)$ . We don't keep track of node  $u'$  (otherwise we would end up needing  $n^k$  information), but instead specify the set  $F$  and position of  $u$  in the compact graph  $G_{\sigma}(u',k,F)$ . The information set  $I(U)$  consists of all possible such colorings  $\mathbf{x}$ ; note that  $|I(U)| = O((kd^{k})^{t})$ .
We construct the information sets of all  $U \in \mathcal{V}$  in a bottom-up manner. Suppose  $U$  has children  $U_1, U_2 \in \mathcal{V}$ . We construct  $I(U)$  from  $I(U_1)$  and  $I(U_2)$ , as described below. For each  $\mathbf{x}' \in I(U_1), \mathbf{x}'' \in I(U_2)$ , we construct a coloring  $\mathbf{x}$ , if feasible, in the following manner. For each node  $u \in U$ , and for each  $j$ :
1. If  $u \in U_1 \cap U_2$ ,  $\mathbf{x}$  is infeasible if the indicators for  $u$  in  $\mathbf{x}'$  and  $\mathbf{x}''$  are inconsistent
2. If  $u$  is contained only in  $U_{1}$ , the indicator for  $u$  in  $\mathbf{x}$  is kept to be the same as that in  $\mathbf{x}'$ ; similarly if  $u$  is contained only in  $U_{2}$
3. If  $u \notin U_1 \cup U_2$ , we check if  $N(u) \cap (U_1 \cup U_2) \neq \emptyset$ . In this case, we choose an indicator for  $u$  in  $\mathbf{x}$  that is consistent with the indicators for its neighbors in  $\mathbf{x}'$  and  $\mathbf{x}''$ . It is also possible that we have inconsistencies, and in that case,  $\mathbf{x}$  will not be feasible. If a node  $u_1 \in N(u) \cap U_1$  is in the conflict set of some node with color  $c_j$ , using the position of  $u_1$  in the associated compact subgraph, we can determine if  $u$  would also have a conflict, and if so, at what position. Similarly, if there exists a node  $u_2 \in N(u) \cap U_2$ . If there simultaneously exist  $u_1 \in N(u) \cap U_1, u_2 \in N(u) \cap U_2$ , both of which are in conflict sets with respect to  $c_j$ , which induce inconsistent conflicts for node  $u$  with respect to  $c_j$ , we would consider  $\mathbf{x}$  infeasible; if the conflicts induced by  $u_1, u_2$  are consistent, we could keep that indication for node  $u$  with respect to  $c_j$ .
Once the information sets  $I(U)$  for all  $U \in \mathcal{V}$  are known, we can find a valid coloring in a top-down manner.
Lemma 26. Suppose we are given a tuple  $M_1, \ldots, M_\ell$ , where  $M_j = (H_j, D_j, \Pi(D_j), \{\widehat{\mathbf{Num}}(\pi), \pi \in \Pi(D_j)\})$ , for some  $\ell \leq k$  such that for every  $j$ ,  $(H_j, D_j)$  consists of nodes with lower index than those in  $(H_{j'}, D_{j'})$ , for  $j < j'$ . It is possible to determine in  $O(k^k)$  time if the  $M_j$ 's are consistent, i.e., if it is possible to find external anchor edges that are consistent for the tuples.
Theorem 8. If  $G$  has degeneracy  $d$  and treewidth  $t$ , we can get a  $O(1 + 1/polylog(n))$  factor upper bound on  $f(G, S)$  in time  $O(poly(n)\exp(k^k d^{k+1}\log(kd^k))(k\log n)^{k^2}(kd^k)^t)$ .
In this section, we present the complete set of experimental results for private triangle counting (Algorithm 2) on all the tested networks (12 networks given in Table 2).
Figure 7: Triangle Count Relative Error, showing the accuracy of the private triangle count with noise calibrated by (1) approximate smooth sensitivity (Algorithm 2), and (2) exact smooth sensitivity.
Figure 8: The ratio of the smooth sensitivity over the actual count of triangles for all networks.
Figure 9: Speedup of Algorithm 2 (compared to the exact calculation) on all networks.
Figure 10: Sensitivity Approx. Error, showing the error of approximate smooth sensitivity output by Algorithm 2 (relative to the exact smooth sensitivity) on all networks.
Figure F shows that when approximate smooth sensitivity is used instead of exact smooth sensitivity, the accuracy of the private triangle counts measured using the metric, Triangle Count Relative Error, are the same across different privacy budgets in all but two networks (Oregon 1 and Oregon 2) (Figure 8). In these two networks, the smooth sensitivities are relatively large in comparison with the triangle counts, making the noise fluctuate much more for the approximate estimate. For the ca-HepPH dataset, the two outputs coincide.
Figure 8) shows the ratio of smooth sensitivity to actual triangle count for all datasets. Note that this ratio is large for the two datasets, Oregon 1 and 2, but small for all the other datasets.
Figure 9 shows the speed-up achieved using Algorithm 2. As seen in the figure, it is orders of magnitude faster than the exact algorithm on all the 12 datasets. In fact, on large graphs (Amazon, DBLP, Gowalla), the speedup is as high as 1,000-fold. Generally, a lower  $\epsilon$  requires a smaller approximation factor  $(\gamma)$ , which in turn requires a larger number of iterations to reduce the error in approximation. To summarize, the majority of tested networks have speedup factors between 10 and 100-fold across all privacy budgets  $\epsilon$ .
Figure 10 shows that all approximate smooth sensitivities computed by Algorithm 2 are close to the exact smooth sensitivities. We measure this using the metric, Sensitivity Approx. Error. Approximate smooth sensitivities are always larger than the true smooth sensitivity. It is necessary since a lower value may expose the privacy due to an inadequate noise magnitude. In general, a smaller value of  $\epsilon$  (higher privacy guarantee) requires a more accurate estimation of the sensitivity. It is illustrated in Figure 10 as the approximate smooth sensitivity is close to the exact smooth sensitivity in all networks at  $\epsilon = 0.125$  or  $\epsilon = 0.25$ .