Repository: qiskit-community/povm-toolbox

Issue:
feat: expose RNG in the `RandomizedProjectiveMeasurements` classes
The `RandomizedProjectiveMeasurements` and its subclasses should allow the user to specify the seed and/or full RNG used for the sampling.

Discussion:

Patch:
diff --git a/docs/tutorials/getting_started.ipynb b/docs/tutorials/getting_started.ipynb
index 5eb4809..7b5b2cb 100644
--- a/docs/tutorials/getting_started.ipynb
+++ b/docs/tutorials/getting_started.ipynb
@@ -42,7 +42,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/plain": [
        "<Figure size 287.294x200.667 with 1 Axes>"
       ]
@@ -127,7 +127,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "PrimitiveResult([POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=256, num_bits=2>)), metadata=RandomizedPMsMetadata(povm=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<256,2>))], metadata={'raw_results': PrimitiveResult([PubResult(data=DataBin<256>(povm_measurement_creg=BitArray(<shape=(256,), num_shots=1, num_bits=2>)), metadata={'shots': 1})], metadata={})})\n"
+      "PrimitiveResult([POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=256, num_bits=2>)), metadata=RPMMetadata(povm_implementation=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<256,2>))], metadata={'raw_results': PrimitiveResult([PubResult(data=DataBin<256>(povm_measurement_creg=BitArray(<shape=(256,), num_shots=1, num_bits=2>)), metadata={'shots': 1})], metadata={})})\n"
      ]
     }
    ],
@@ -164,7 +164,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "[Counter({(3, 3): 18, (4, 5): 18, (5, 4): 18, (0, 0): 12, (2, 4): 11, (2, 2): 11, (1, 3): 11, (0, 3): 10, (1, 1): 10, (2, 0): 9, (5, 1): 9, (3, 5): 9, (5, 3): 8, (3, 0): 8, (4, 3): 8, (1, 4): 7, (0, 2): 7, (1, 5): 7, (4, 2): 7, (4, 1): 7, (2, 1): 6, (0, 4): 6, (0, 5): 6, (2, 5): 6, (3, 4): 5, (5, 0): 5, (1, 2): 5, (3, 1): 4, (5, 2): 4, (4, 0): 4})]\n"
+      "[Counter({(4, 5): 17, (0, 0): 16, (2, 2): 15, (1, 1): 15, (5, 4): 13, (3, 3): 13, (1, 2): 12, (4, 3): 12, (0, 4): 11, (0, 3): 10, (1, 4): 9, (3, 0): 9, (3, 4): 8, (0, 5): 8, (3, 5): 8, (1, 3): 7, (5, 3): 7, (2, 0): 7, (4, 0): 6, (0, 2): 6, (5, 1): 6, (2, 4): 6, (1, 5): 5, (5, 2): 5, (2, 1): 5, (5, 0): 5, (3, 1): 4, (4, 2): 4, (4, 1): 4, (2, 5): 3})]\n"
      ]
     }
    ],
@@ -217,9 +217,9 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "from povm_toolbox.post_processor import POVMPostprocessor\n",
+    "from povm_toolbox.post_processor import POVMPostProcessor\n",
     "\n",
-    "post_processor = POVMPostprocessor(pub_result)"
+    "post_processor = POVMPostProcessor(pub_result)"
    ]
   },
   {
@@ -228,7 +228,7 @@
    "source": [
     "### Get the expected value\n",
     "\n",
-    "One can request the expectation value of an observable with the method `povm_toolbox.post_processor.POVMPostProcessor.get_expextation_value`."
+    "One can request the expectation value of an observable with the method `povm_toolbox.post_processor.POVMPostProcessor.get_expectation_value`."
    ]
   },
   {
@@ -240,7 +240,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "4.058593749999999\n"
+      "4.12890625\n"
      ]
     }
    ],
@@ -253,7 +253,7 @@
    "cell_type": "markdown",
    "metadata": {},
    "source": [
-    "For reference, we can compare our estimated expecatation value to the exact value.\n",
+    "For reference, we can compare our estimated expectation value to the exact value.\n",
     "\n",
     "The post-processor can also compute the (estimated) standard deviation of the estimator we built.\n"
    ]
@@ -268,9 +268,9 @@
      "output_type": "stream",
      "text": [
       "Exact value:     3.999999999999999\n",
-      "Estimated value: 4.058593749999999\n",
+      "Estimated value: 4.12890625\n",
       "\n",
-      "Estimated standard deviation of the estimator: 0.26695338524170026\n"
+      "Estimated standard deviation of the estimator: 0.268401966100678\n"
      ]
     }
    ],
@@ -303,7 +303,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.10.13"
+   "version": "3.12.2"
   }
  },
  "nbformat": 4,
diff --git a/docs/tutorials/parametrized_circuit.ipynb b/docs/tutorials/parametrized_circuit.ipynb
index e30e03b..1fe7599 100644
--- a/docs/tutorials/parametrized_circuit.ipynb
+++ b/docs/tutorials/parametrized_circuit.ipynb
@@ -6,7 +6,7 @@
    "source": [
     "# Parametrized circuits\n",
     "\n",
-    "This tutorial shows you can submit paranetrized quantum circuits to the `POVMSampler`."
+    "This tutorial shows you can submit parametrized quantum circuits to the `POVMSampler`."
    ]
   },
   {
@@ -88,7 +88,7 @@
    "source": [
     "## Measurement\n",
     "\n",
-    "We now look at the implementation of Classical Shaodws measurement"
+    "We now look at the implementation of Classical Shadows measurement"
    ]
   },
   {
@@ -150,7 +150,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "POVMPubResult(data=DataBin<2>(povm_measurement_creg=BitArray(<shape=(2,), num_shots=4096, num_bits=2>)), metadata=RandomizedPMsMetadata(povm=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<2,4096,2>))\n",
+      "POVMPubResult(data=DataBin<2>(povm_measurement_creg=BitArray(<shape=(2,), num_shots=4096, num_bits=2>)), metadata=RPMMetadata(povm_implementation=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<2,4096,2>))\n",
       "(2,)\n"
      ]
     }
@@ -177,9 +177,9 @@
    "metadata": {},
    "outputs": [],
    "source": [
-    "from povm_toolbox.post_processor.povm_post_processor import POVMPostprocessor\n",
+    "from povm_toolbox.post_processor.povm_post_processor import POVMPostProcessor\n",
     "\n",
-    "post_processor = POVMPostprocessor(pub_result)"
+    "post_processor = POVMPostProcessor(pub_result)"
    ]
   },
   {
@@ -217,7 +217,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "[1.72070312 2.00268555]\n"
+      "[1.50830078 2.06274414]\n"
      ]
     }
    ],
@@ -242,7 +242,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "0.15844726562500044\n"
+      "0.42871093750000033\n"
      ]
     }
    ],
@@ -299,14 +299,14 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "[[-0.93359375  0.46899414  1.80273438  1.68701172]\n",
-      " [ 0.70483398  0.81323242  2.37548828  4.0168457 ]\n",
-      " [ 4.99975586  4.38745117  3.11083984  2.00927734]]\n"
+      "[[-0.99072266  0.39648437  1.64672852  1.60864258]\n",
+      " [ 0.89233398  0.78320312  2.36816406  3.94799805]\n",
+      " [ 4.91113281  4.23217773  3.17236328  2.17919922]]\n"
      ]
     }
    ],
    "source": [
-    "post_processor = POVMPostprocessor(pub_result)\n",
+    "post_processor = POVMPostProcessor(pub_result)\n",
     "exp_values = post_processor.get_expectation_value(H1)\n",
     "print(exp_values)"
    ]
diff --git a/docs/tutorials/povm_sampler_pub.ipynb b/docs/tutorials/povm_sampler_pub.ipynb
index 9d5839d..c9abd64 100644
--- a/docs/tutorials/povm_sampler_pub.ipynb
+++ b/docs/tutorials/povm_sampler_pub.ipynb
@@ -60,7 +60,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/plain": [
        "<Figure size 287.294x200.667 with 1 Axes>"
       ]
@@ -95,7 +95,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7kAAADuCAYAAAD8xMASAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAABYRUlEQVR4nO3dd1yV5f8/8Nd9DhyW7CFDBBUQxC1Y4kKTzL2zMsuRq5z5TU1zlWWOj6WWo6Vlaq7KbVoulNyCAxAEQVkqKgjIPvfvD37nxPEc9jjHw+v5ePRI7vnmcF1wXue67+sWRFEUQURERERERKQHJNougIiIiIiIiKi6MOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9IaBtgsgIqLaI4pATqG2q9B9xlJAELRdhSpRFFGQnavtMirEwMQIgg69kGz/FaNr/aCu94EXsf1WdxsSRRGFhS/WiyCVSnXq92BdwZBLRFSH5BQCnQ9puwrdF9wbMNGxv5AF2bnY2uRtbZdRISNifoWhqbG2y1Bi+68YXesHdb0PvIjtt7rbUGFhIfbs2VN9B6wFQ4YMgYGBDnWkOoKXKxMREREREZHeYMglIiIiIiIivcGQS0RERERERHqDIZeIiIiIiIj0BkMuERERERER6Q2GXCIiIiIiItIbDLlERERERESkN/jQJiIiqjEZ108i6pNuKsskxmYwcvaCbeBIOPSdAkHKP0Wkv9gHSNvYBqkuYosmIqIaZ93lTVi2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ChMTE2zfvl3Z3tzd3TFs2DBMmDABzs7OAFCtE52VRhRF/H32MgCgQ1tf1DOt2iOIiIiIiPSZXoTc6dOnY8+ePfDy8kJkZCRycnIQGBiII0eO4IMPPtC4z48//oidO3eie/fuyMjIQFhYGGxsbDB27FiEhoYiKCioxPMZGxtjyJAhyq/r4iiugp+fH8LDw7FkyRK0a9cOiYmJuHjxIlJTU/HSSy9hyZIlOHHihMo+bdq0wZkzZ9CrVy8IgoCIiAhYWFjg888/x+HDhzUGhyFDhmD58uXo2bMnjIyMcOPGDdy6dQuurq54//33ce3aNbRv315lHxsbG5w9exZvv/02rKysEBUVBVEUsWTJEhw+fLjKo3Hz5s3DpUuXMHr0aNja2uLGjRu4du0aDA0NMWTIEPzyyy/KqwZqmkQiwYYNG3D8+HEMHz4cJiYmCAsLQ0REBKysrPD2229jz549eOedd6rlfBYWFjh69Cj69u2LwsJCnDt3DqdOnUJoaGiljzls2DBcv34dEyZMgKurKyIiInDv3j24u7tjxowZJT7LtzR2dnY4deoUNm/ejKCgIGRlZeHSpUu4c+cOPDw8MG3aNJw6dUp5r75Cly5dcOHCBQwaNAiGhoa4ceMGrKyssG7dOqxevVo5aZniXv+alp9fAEd7GxgbyTiKS0RERFQGQazJZ4PUsOp8vA4RUXmkpqbC3t4e1tbWePz4ca2eOyc3D8ZGsrI3JCIiIqrD9GIkl4iotmzevBnAfxOe1SYGXCIiIqKyMeQSET3nzJkz+PXXX5GTk6NcJpfLsWXLFuX9/pMmTdJWeURERERUirr1zBs9MGXKFFy9erXc21d0sh6iqtL0/OOStGnTRvnILl2SkJCAkSNHYty4cfDy8oKRkRFiYmKUlydPnjwZvXv31nKVRERERKQJQ+4L5vr16zh79qy2yyAqUUXap64+W7pDhw6YPn06/vnnHyQkJODp06ewtLTEq6++ivHjx6tMPEdEREREuuWFnniKiIiIiIiIqDjek0tERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREemN/wdHIrI09aotJgAAAABJRU5ErkJggg==",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA7kAAADuCAYAAAD8xMASAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAABYRUlEQVR4nO3dd1yV5f8/8Nd9DhyW7CFDBBUQxC1Y4kKTzL2zMsuRq5z5TU1zlWWOj6WWo6Vlaq7KbVoulNyCAxAEQVkqKgjIPvfvD37nxPEc9jjHw+v5ePRI7vnmcF1wXue67+sWRFEUQURERERERKQHJNougIiIiIiIiKi6MOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9IaBtgsgIqLaI4pATqG2q9B9xlJAELRdhSpRFFGQnavtMirEwMQIgg69kGz/FaNr/aCu94EXsf1WdxsSRRGFhS/WiyCVSnXq92BdwZBLRFSH5BQCnQ9puwrdF9wbMNGxv5AF2bnY2uRtbZdRISNifoWhqbG2y1Bi+68YXesHdb0PvIjtt7rbUGFhIfbs2VN9B6wFQ4YMgYGBDnWkOoKXKxMREREREZHeYMglIiIiIiIivcGQS0RERERERHqDIZeIiIiIiIj0BkMuERERERER6Q2GXCIiIiIiItIbDLlERERERESkN/jQJiIiqjEZ108i6pNuKsskxmYwcvaCbeBIOPSdAkHKP0Wkv9gHSNvYBqkuYosmIqIaZ93lTVi2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ChMTE2zfvl3Z3tzd3TFs2DBMmDABzs7OAFCtE52VRhRF/H32MgCgQ1tf1DOt2iOIiIiIiPSZXoTc6dOnY8+ePfDy8kJkZCRycnIQGBiII0eO4IMPPtC4z48//oidO3eie/fuyMjIQFhYGGxsbDB27FiEhoYiKCioxPMZGxtjyJAhyq/r4iiugp+fH8LDw7FkyRK0a9cOiYmJuHjxIlJTU/HSSy9hyZIlOHHihMo+bdq0wZkzZ9CrVy8IgoCIiAhYWFjg888/x+HDhzUGhyFDhmD58uXo2bMnjIyMcOPGDdy6dQuurq54//33ce3aNbRv315lHxsbG5w9exZvv/02rKysEBUVBVEUsWTJEhw+fLjKo3Hz5s3DpUuXMHr0aNja2uLGjRu4du0aDA0NMWTIEPzyyy/KqwZqmkQiwYYNG3D8+HEMHz4cJiYmCAsLQ0REBKysrPD2229jz549eOedd6rlfBYWFjh69Cj69u2LwsJCnDt3DqdOnUJoaGiljzls2DBcv34dEyZMgKurKyIiInDv3j24u7tjxowZJT7LtzR2dnY4deoUNm/ejKCgIGRlZeHSpUu4c+cOPDw8MG3aNJw6dUp5r75Cly5dcOHCBQwaNAiGhoa4ceMGrKyssG7dOqxevVo5aZniXv+alp9fAEd7GxgbyTiKS0RERFQGQazJZ4PUsOp8vA4RUXmkpqbC3t4e1tbWePz4ca2eOyc3D8ZGsrI3JCIiIqrD9GIkl4iotmzevBnAfxOe1SYGXCIiIqKyMeQSET3nzJkz+PXXX5GTk6NcJpfLsWXLFuX9/pMmTdJWeURERERUirr1zBs9MGXKFFy9erXc21d0sh6iqtL0/OOStGnTRvnILl2SkJCAkSNHYty4cfDy8oKRkRFiYmKUlydPnjwZvXv31nKVRERERKQJQ+4L5vr16zh79qy2yyAqUUXap64+W7pDhw6YPn06/vnnHyQkJODp06ewtLTEq6++ivHjx6tMPEdEREREuuWFnniKiIiIiIiIqDjek0tERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREekNhlwiIiIiIiLSGwy5REREREREpDcYcomIiIiIiEhvMOQSERERERGR3mDIJSIiIiIiIr3BkEtERERERER6gyGXiIiIiIiI9AZDLhEREREREemN/wdHIrI09aotJgAAAABJRU5ErkJggg==",
       "text/plain": [
        "<Figure size 1212.52x284.278 with 1 Axes>"
       ]
@@ -153,7 +153,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/plain": [
        "<Figure size 370.906x200.667 with 1 Axes>"
       ]
@@ -178,7 +178,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/plain": [
        "<Figure size 287.294x200.667 with 1 Axes>"
       ]
@@ -203,7 +203,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/plain": [
        "<Figure size 370.906x200.667 with 1 Axes>"
       ]
@@ -229,7 +229,7 @@
     "### Create the PUBs\n",
     "Finally, create the pub-like objects, which is simply a tuple `(<single circuit>, <optional one or more parameter values>, <optional shots>, <optional POVM implementation>)`.\n",
     "Here we will use the fact that the last three items are optional because :\n",
-    " - The circuits are not paraneterized so there is no need to specify paraneter values.\n",
+    " - The circuits are not parametrized so there is no need to specify parameter values.\n",
     " - We assume a default number of shot will be supplied with the `POVMSampler.run` method.\n",
     " - We assume a default POVM implementation will be supplied with the `POVMSampler.run` method."
    ]
@@ -288,7 +288,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "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",
+      "image/png": "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",
       "text/plain": [
        "<Figure size 371.107x284.278 with 1 Axes>"
       ]
@@ -343,7 +343,7 @@
    "outputs": [
     {
      "data": {
-      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/oAAAEvCAYAAAD1iroUAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguMywgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy/H5lhTAAAACXBIWXMAAA9hAAAPYQGoP6dpAAB4d0lEQVR4nO3dd3hT1f8H8HeSNt170ElLaUsHeylDKEhF9hYXshQBmaJFQSjggAIiCDL0q4CKyHIwRZEhUNmU1UJLF3RCgZbulfv7o79EQtI9kibv1/P4SO45595P0nPafO6591yRIAgCiIiIiIiIiEgniDUdABERERERERHVHSb6RERERERERDqEiT4RERERERGRDmGiT0RERERERKRDmOgTERERERER6RAm+kREREREREQ6hIk+ERERERERkQ5hok9ERERERESkQ5joExEREREREekQJvpEREREREREOoSJPhEREREREZEOYaJPREREREREpEOY6BMRERERERHpECb6RERERERERDqEiT4RERERERGRDmGiT0RERERERKRDmOgTERERERER6RAm+kREREREREQ6hIk+ERERERERkQ5hok9ERERERESkQ5joExEREREREekQJvpEREREREREOoSJPhEREREREZEOYaJPREREREREpEOY6BMRERERERHpECb6RERERERERDqEiT4RERERERGRDmGiT0RERERERKRDmOgTERERERER6RAm+kREREREREQ6hIk+ERERERERkQ5hok9ERERERESkQ5joExEREREREekQJvpEREREREREOoSJPhEREREREZEOYaJPREREREREpEOY6BMRERERERHpEANNB0BERA1HEICCUk1Hof2MJYBIpOkolAmCgJL8Qk2HUS0GJkYQadEHyf5fPdo2DvR9DDTG/lvXfUgQBJSWNq4PQSKRaNXvQdIfTPSJiPRIQSnw3EFNR6H9TvYHTLTsL2RJfiG2NX9d02FUy2uxP8LQ1FjTYSiw/1ePto0DfR8DjbH/1nUfKi0txZ49e+puhw1gxIgRMDDQooFEeoOX7hMRERERERHpECb6RERERERERDqEiT4RERERERGRDmGiT0RERERERKRDmOgTERERERER6RAm+kREREREREQ6hIk+ERERERERkQ7hQx2JiKjeZF87juiPeiltExubwcjFF3ZBY+A4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",
+      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA/oAAAEvCAYAAAD1iroUAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjguNCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy8fJSN1AAAACXBIWXMAAA9hAAAPYQGoP6dpAAB4d0lEQVR4nO3dd3hT1f8H8HeSNt170ElLaUsHeylDKEhF9hYXshQBmaJFQSjggAIiCDL0q4CKyHIwRZEhUNmU1UJLF3RCgZbulfv7o79EQtI9kibv1/P4SO45595P0nPafO6591yRIAgCiIiIiIiIiEgniDUdABERERERERHVHSb6RERERERERDqEiT4RERERERGRDmGiT0RERERERKRDmOgTERERERER6RAm+kREREREREQ6hIk+ERERERERkQ5hok9ERERERESkQ5joExEREREREekQJvpEREREREREOoSJPhEREREREZEOYaJPREREREREpEOY6BMRERERERHpECb6RERERERERDqEiT4RERERERGRDmGiT0RERERERKRDmOgTERERERER6RAm+kREREREREQ6hIk+ERERERERkQ5hok9ERERERESkQ5joExEREREREekQJvpEREREREREOoSJPhEREREREZEOYaJPREREREREpEOY6BMRERERERHpECb6RERERERERDqEiT4RERERERGRDmGiT0RERERERKRDmOgTERERERER6RAm+kREREREREQ6hIk+ERERERERkQ5hok9ERERERESkQ5joExEREREREekQJvpEREREREREOoSJPhEREREREZEOYaJPREREREREpEOY6BMRERERERHpEANNB0BERA1HEICCUk1Hof2MJYBIpOkolAmCgJL8Qk2HUS0GJkYQadEHyf5fPdo2DvR9DDTG/lvXfUgQBJSWNq4PQSKRaNXvQdIfTPSJiPRIQSnw3EFNR6H9TvYHTLTsL2RJfiG2NX9d02FUy2uxP8LQ1FjTYSiw/1ePto0DfR8DjbH/1nUfKi0txZ49e+puhw1gxIgRMDDQooFEeoOX7hMRERERERHpECb6RERERERERDqEiT4RERERERGRDmGiT0RERERERKRDmOgTERERERER6RAm+kREREREREQ6hIk+ERERERERkQ7hQx2JiKjeZF87juiPeiltExubwcjFF3ZBY+A4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",
       "text/plain": [
        "<Figure size 1296.13x367.889 with 1 Axes>"
       ]
@@ -413,7 +413,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "PrimitiveResult([POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=128, num_bits=2>)), metadata=RandomizedPMsMetadata(povm=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<128,2>)), POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=2048, num_bits=2>)), metadata=RandomizedPMsMetadata(povm=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<2048,2>)), POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=2048, num_bits=2>)), metadata=RandomizedPMsMetadata(povm=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<2048,2>)), POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=2048, num_bits=2>)), metadata=RandomizedPMsMetadata(povm=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<2048,2>)), POVMPubResult(data=DataBin<4>(povm_measurement_creg=BitArray(<shape=(4,), num_shots=4096, num_bits=3>)), metadata=RandomizedPMsMetadata(povm=ClassicalShadows(n_qubits=3), pvm_keys=np.ndarray<4,4096,3>))], metadata={'raw_results': PrimitiveResult([PubResult(data=DataBin<128>(povm_measurement_creg=BitArray(<shape=(128,), num_shots=1, num_bits=2>)), metadata={'shots': 1}), PubResult(data=DataBin<2048>(povm_measurement_creg=BitArray(<shape=(2048,), num_shots=1, num_bits=2>)), metadata={'shots': 1}), PubResult(data=DataBin<2048>(povm_measurement_creg=BitArray(<shape=(2048,), num_shots=1, num_bits=2>)), metadata={'shots': 1}), PubResult(data=DataBin<2048>(povm_measurement_creg=BitArray(<shape=(2048,), num_shots=1, num_bits=2>)), metadata={'shots': 1}), PubResult(data=DataBin<4,4096>(povm_measurement_creg=BitArray(<shape=(4, 4096), num_shots=1, num_bits=3>)), metadata={'shots': 1})], metadata={})})\n"
+      "PrimitiveResult([POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=128, num_bits=2>)), metadata=RPMMetadata(povm_implementation=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<128,2>)), POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=2048, num_bits=2>)), metadata=RPMMetadata(povm_implementation=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<2048,2>)), POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=2048, num_bits=2>)), metadata=RPMMetadata(povm_implementation=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<2048,2>)), POVMPubResult(data=DataBin<>(povm_measurement_creg=BitArray(<shape=(), num_shots=2048, num_bits=2>)), metadata=RPMMetadata(povm_implementation=ClassicalShadows(n_qubits=2), pvm_keys=np.ndarray<2048,2>)), POVMPubResult(data=DataBin<4>(povm_measurement_creg=BitArray(<shape=(4,), num_shots=4096, num_bits=3>)), metadata=RPMMetadata(povm_implementation=ClassicalShadows(n_qubits=3), pvm_keys=np.ndarray<4,4096,3>))], metadata={'raw_results': PrimitiveResult([PubResult(data=DataBin<128>(povm_measurement_creg=BitArray(<shape=(128,), num_shots=1, num_bits=2>)), metadata={'shots': 1}), PubResult(data=DataBin<2048>(povm_measurement_creg=BitArray(<shape=(2048,), num_shots=1, num_bits=2>)), metadata={'shots': 1}), PubResult(data=DataBin<2048>(povm_measurement_creg=BitArray(<shape=(2048,), num_shots=1, num_bits=2>)), metadata={'shots': 1}), PubResult(data=DataBin<2048>(povm_measurement_creg=BitArray(<shape=(2048,), num_shots=1, num_bits=2>)), metadata={'shots': 1}), PubResult(data=DataBin<4,4096>(povm_measurement_creg=BitArray(<shape=(4, 4096), num_shots=1, num_bits=3>)), metadata={'shots': 1})], metadata={})})\n"
      ]
     }
    ],
@@ -434,14 +434,14 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "[Counter({(2, 2): 10, (5, 4): 9, (1, 1): 8, (0, 0): 7, (3, 3): 7, (0, 4): 7, (2, 1): 6, (3, 1): 6, (1, 2): 6, (5, 3): 5, (5, 0): 5, (4, 2): 5, (0, 3): 5, (5, 2): 4, (4, 5): 4, (4, 3): 4, (1, 4): 3, (1, 5): 3, (0, 2): 3, (3, 4): 3, (4, 1): 3, (5, 1): 3, (2, 4): 2, (0, 5): 2, (2, 0): 2, (1, 3): 2, (3, 0): 1, (4, 0): 1, (2, 5): 1, (3, 5): 1})]\n",
-      "[Counter({(4, 4): 121, (1, 1): 120, (0, 0): 109, (2, 3): 108, (5, 5): 103, (3, 2): 87, (0, 4): 71, (2, 1): 70, (1, 3): 69, (4, 0): 69, (5, 3): 65, (0, 3): 64, (3, 4): 63, (4, 1): 61, (2, 5): 61, (4, 2): 59, (3, 5): 59, (4, 3): 58, (1, 4): 56, (1, 5): 55, (5, 1): 55, (0, 5): 54, (1, 2): 54, (3, 1): 53, (2, 4): 53, (5, 2): 53, (0, 2): 53, (5, 0): 50, (3, 0): 50, (2, 0): 45})]\n",
-      "[Counter({(1, 0): 121, (2, 2): 108, (5, 5): 104, (3, 3): 98, (0, 1): 96, (4, 4): 87, (3, 1): 73, (5, 1): 72, (1, 2): 71, (0, 4): 69, (3, 5): 68, (5, 2): 68, (3, 4): 68, (1, 4): 67, (0, 3): 64, (4, 1): 62, (2, 0): 62, (1, 3): 59, (4, 2): 59, (3, 0): 58, (1, 5): 58, (0, 5): 58, (5, 3): 58, (2, 1): 55, (2, 4): 51, (0, 2): 50, (4, 0): 49, (2, 5): 48, (4, 3): 47, (5, 0): 40})]\n",
-      "[Counter({(0, 1): 128, (3, 2): 126, (1, 0): 106, (5, 4): 104, (4, 5): 102, (2, 3): 102, (0, 5): 71, (1, 2): 69, (2, 0): 66, (4, 2): 65, (1, 3): 65, (0, 4): 63, (3, 5): 61, (2, 1): 61, (4, 1): 59, (5, 2): 59, (3, 0): 58, (3, 4): 57, (0, 2): 56, (5, 3): 55, (4, 3): 55, (5, 1): 54, (1, 5): 53, (2, 4): 52, (5, 0): 52, (4, 0): 51, (2, 5): 50, (1, 4): 50, (0, 3): 49, (3, 1): 49})]\n",
-      "[Counter({(0, 0, 0): 164, (0, 0, 5): 85, (0, 0, 4): 84, (4, 0, 0): 78, (3, 0, 0): 75, (0, 4, 0): 75, (0, 5, 0): 68, (2, 0, 0): 67, (0, 0, 2): 67, (0, 2, 0): 66, (5, 0, 0): 65, (0, 3, 0): 65, (0, 0, 3): 55, (0, 4, 5): 53, (0, 5, 4): 51, (4, 5, 0): 50, (0, 3, 4): 48, (3, 0, 5): 48, (0, 3, 2): 47, (0, 5, 3): 46, (2, 0, 5): 46, (4, 3, 0): 45, (0, 2, 5): 44, (0, 5, 2): 44, (0, 3, 3): 44, (0, 4, 3): 43, (3, 0, 2): 42, (3, 0, 3): 41, (0, 4, 4): 41, (5, 0, 3): 41, (3, 2, 0): 41, (3, 5, 0): 40, (5, 4, 0): 40, (4, 4, 0): 39, (0, 5, 5): 39, (2, 0, 4): 39, (3, 0, 4): 38, (2, 5, 0): 38, (3, 4, 0): 38, (4, 0, 3): 38, (2, 2, 0): 37, (5, 0, 2): 37, (5, 2, 0): 37, (0, 4, 2): 36, (4, 0, 5): 36, (5, 5, 0): 36, (2, 0, 2): 35, (3, 3, 0): 35, (4, 2, 0): 35, (0, 2, 2): 34, (0, 2, 4): 34, (5, 0, 5): 33, (5, 0, 4): 33, (5, 3, 3): 33, (2, 0, 3): 33, (4, 0, 4): 32, (4, 0, 2): 32, (2, 3, 0): 31, (0, 3, 5): 30, (2, 4, 0): 29, (5, 3, 0): 28, (5, 4, 4): 26, (2, 5, 4): 25, (2, 4, 2): 25, (0, 2, 3): 25, (3, 2, 5): 25, (3, 3, 4): 25, (5, 4, 3): 25, (2, 3, 5): 24, (3, 4, 3): 24, (4, 4, 5): 24, (3, 5, 4): 23, (4, 3, 2): 23, (4, 5, 5): 23, (2, 2, 3): 23, (4, 4, 4): 23, (4, 2, 4): 22, (4, 4, 3): 22, (5, 5, 3): 22, (2, 4, 3): 22, (2, 2, 5): 21, (3, 3, 2): 21, (4, 2, 5): 21, (4, 5, 4): 21, (3, 2, 3): 21, (2, 2, 2): 21, (5, 3, 2): 21, (3, 2, 2): 21, (4, 2, 3): 20, (2, 3, 2): 20, (3, 5, 5): 20, (5, 2, 3): 19, (5, 5, 4): 19, (4, 3, 3): 19, (3, 4, 2): 19, (3, 2, 4): 19, (4, 3, 5): 18, (2, 4, 4): 18, (5, 2, 5): 18, (3, 3, 5): 18, (4, 4, 2): 18, (3, 4, 4): 18, (5, 2, 4): 18, (5, 5, 2): 18, (4, 3, 4): 17, (5, 4, 2): 17, (3, 5, 2): 17, (2, 5, 2): 16, (5, 5, 5): 16, (4, 2, 2): 16, (2, 3, 3): 16, (2, 5, 5): 15, (4, 5, 3): 15, (2, 4, 5): 14, (5, 3, 5): 14, (5, 2, 2): 14, (3, 3, 3): 13, (3, 4, 5): 13, (4, 5, 2): 12, (2, 5, 3): 12, (5, 3, 4): 12, (2, 3, 4): 12, (2, 2, 4): 12, (5, 4, 5): 11, (3, 5, 3): 10})\n",
-      " Counter({(0, 0, 0): 137, (0, 0, 2): 97, (0, 0, 4): 90, (3, 0, 0): 81, (0, 0, 3): 73, (4, 0, 0): 72, (5, 0, 0): 71, (0, 5, 0): 71, (2, 0, 0): 70, (0, 4, 0): 67, (0, 2, 0): 64, (0, 0, 5): 62, (0, 3, 0): 58, (3, 5, 0): 54, (2, 0, 2): 53, (3, 3, 0): 50, (0, 4, 4): 49, (2, 0, 5): 47, (4, 5, 0): 46, (2, 3, 0): 46, (2, 4, 0): 45, (3, 0, 5): 44, (2, 2, 0): 44, (0, 4, 3): 43, (3, 4, 0): 41, (5, 2, 0): 41, (0, 2, 3): 41, (5, 0, 2): 40, (0, 4, 2): 40, (5, 0, 3): 40, (5, 0, 4): 39, (3, 0, 3): 39, (4, 3, 0): 39, (4, 0, 2): 38, (0, 5, 2): 38, (5, 4, 0): 38, (0, 2, 5): 37, (0, 5, 3): 37, (3, 0, 2): 37, (3, 2, 0): 35, (0, 4, 5): 35, (3, 0, 4): 35, (2, 0, 4): 35, (4, 4, 0): 34, (2, 3, 3): 34, (4, 0, 3): 34, (0, 2, 2): 33, (0, 3, 3): 32, (0, 5, 4): 32, (3, 5, 5): 32, (5, 5, 0): 32, (2, 0, 3): 32, (5, 0, 5): 31, (4, 4, 3): 31, (3, 3, 2): 30, (4, 3, 3): 30, (2, 5, 4): 30, (0, 3, 5): 29, (2, 2, 2): 29, (4, 3, 4): 29, (3, 2, 3): 29, (2, 5, 0): 29, (4, 2, 0): 29, (3, 2, 5): 28, (4, 0, 5): 28, (0, 3, 2): 28, (0, 2, 4): 28, (4, 5, 2): 27, (5, 2, 4): 27, (3, 4, 4): 27, (0, 5, 5): 26, (5, 5, 5): 25, (5, 3, 0): 25, (2, 2, 4): 24, (5, 4, 4): 24, (5, 3, 2): 24, (3, 3, 3): 23, (5, 5, 3): 23, (4, 2, 5): 23, (5, 3, 5): 22, (4, 0, 4): 22, (3, 4, 3): 21, (2, 5, 3): 21, (0, 3, 4): 21, (2, 4, 3): 21, (5, 2, 3): 21, (4, 3, 2): 20, (2, 4, 5): 20, (4, 5, 5): 18, (3, 4, 2): 18, (3, 5, 3): 18, (2, 4, 2): 18, (4, 2, 2): 18, (2, 3, 5): 17, (2, 4, 4): 17, (4, 2, 3): 17, (2, 5, 2): 16, (5, 4, 5): 16, (5, 2, 2): 16, (4, 4, 4): 16, (2, 2, 5): 16, (3, 5, 2): 16, (4, 4, 5): 15, (4, 5, 4): 15, (2, 3, 4): 15, (3, 2, 4): 14, (3, 3, 5): 14, (2, 2, 3): 14, (5, 3, 3): 14, (2, 3, 2): 14, (4, 4, 2): 14, (3, 4, 5): 13, (3, 3, 4): 12, (5, 4, 2): 12, (4, 2, 4): 12, (2, 5, 5): 11, (3, 2, 2): 11, (5, 4, 3): 10, (5, 3, 4): 9, (4, 3, 5): 8, (5, 5, 4): 8, (5, 5, 2): 8, (4, 5, 3): 7, (4, 1, 1): 7, (3, 5, 4): 7, (5, 2, 5): 6, (2, 1, 3): 5, (1, 1, 1): 5, (1, 2, 1): 5, (1, 1, 2): 5, (1, 2, 5): 4, (1, 5, 1): 4, (1, 3, 1): 4, (3, 3, 1): 4, (1, 5, 5): 3, (2, 1, 5): 3, (1, 1, 5): 3, (5, 3, 1): 3, (1, 4, 5): 3, (1, 1, 4): 3, (1, 3, 2): 3, (4, 1, 2): 3, (1, 5, 4): 3, (1, 4, 2): 3, (1, 3, 5): 3, (4, 1, 3): 3, (2, 3, 1): 2, (5, 1, 3): 2, (2, 1, 2): 2, (3, 2, 1): 2, (5, 1, 4): 2, (3, 4, 1): 2, (5, 1, 5): 2, (1, 4, 1): 2, (2, 2, 1): 2, (1, 5, 3): 1, (1, 3, 3): 1, (3, 1, 4): 1, (2, 1, 4): 1, (3, 5, 1): 1, (4, 1, 5): 1, (1, 3, 4): 1, (5, 1, 2): 1, (1, 4, 3): 1, (1, 1, 3): 1, (1, 2, 3): 1, (5, 1, 1): 1, (4, 1, 4): 1, (1, 2, 2): 1, (3, 1, 3): 1, (1, 2, 4): 1, (3, 1, 1): 1, (3, 1, 5): 1, (2, 1, 1): 1, (2, 5, 1): 1})\n",
-      " Counter({(1, 1, 1): 68, (0, 0, 0): 65, (4, 1, 1): 54, (3, 1, 1): 50, (4, 5, 2): 47, (3, 0, 0): 47, (4, 4, 3): 46, (1, 5, 1): 46, (5, 1, 1): 46, (0, 0, 4): 45, (2, 4, 5): 45, (1, 1, 4): 44, (1, 2, 1): 43, (2, 3, 3): 43, (0, 0, 5): 42, (0, 4, 0): 42, (1, 1, 3): 42, (5, 2, 4): 41, (0, 2, 0): 41, (5, 3, 5): 41, (3, 5, 5): 40, (5, 0, 0): 38, (4, 2, 5): 38, (1, 3, 1): 38, (0, 0, 3): 37, (5, 4, 2): 37, (4, 0, 0): 37, (5, 5, 3): 36, (1, 4, 1): 36, (2, 1, 1): 36, (1, 1, 5): 35, (2, 2, 2): 35, (2, 5, 4): 35, (3, 4, 4): 33, (3, 2, 3): 33, (2, 0, 0): 33, (4, 3, 4): 32, (0, 0, 2): 31, (1, 1, 2): 30, (0, 3, 0): 29, (3, 3, 2): 29, (5, 0, 2): 28, (5, 5, 0): 28, (0, 5, 0): 28, (1, 2, 3): 27, (1, 4, 4): 27, (3, 3, 1): 27, (5, 1, 2): 26, (2, 5, 3): 26, (2, 5, 1): 25, (2, 0, 2): 24, (3, 5, 1): 24, (4, 2, 3): 24, (3, 5, 3): 24, (1, 3, 2): 24, (4, 0, 5): 23, (5, 0, 4): 23, (1, 4, 2): 23, (5, 1, 4): 23, (0, 5, 5): 23, (3, 0, 5): 23, (0, 2, 4): 23, (5, 3, 1): 23, (5, 2, 2): 22, (2, 4, 3): 22, (2, 2, 5): 22, (3, 0, 2): 22, (4, 3, 2): 22, (0, 4, 5): 22, (3, 2, 4): 22, (4, 5, 1): 21, (4, 5, 4): 21, (2, 0, 3): 21, (4, 5, 0): 21, (1, 4, 5): 21, (4, 3, 3): 21, (4, 1, 4): 21, (2, 4, 1): 20, (2, 1, 5): 20, (3, 1, 3): 20, (1, 5, 4): 20, (0, 2, 5): 20, (2, 4, 0): 20, (0, 4, 4): 20, (4, 4, 1): 20, (4, 4, 4): 20, (5, 4, 4): 20, (0, 3, 5): 20, (4, 4, 5): 20, (2, 0, 5): 20, (3, 1, 5): 20, (3, 1, 4): 20, (1, 3, 4): 20, (4, 4, 0): 20, (2, 3, 0): 19, (0, 4, 3): 19, (2, 1, 2): 19, (2, 2, 4): 19, (0, 2, 3): 19, (3, 4, 1): 19, (4, 0, 2): 19, (1, 2, 5): 19, (1, 5, 2): 19, (3, 0, 4): 19, (0, 3, 3): 19, (0, 3, 4): 19, (1, 3, 3): 19, (5, 5, 5): 19, (4, 0, 3): 19, (2, 1, 4): 19, (5, 5, 4): 18, (5, 3, 2): 18, (2, 3, 5): 18, (5, 4, 1): 18, (0, 4, 2): 18, (2, 5, 0): 18, (5, 2, 1): 18, (2, 4, 2): 18, (4, 0, 4): 18, (5, 1, 5): 18, (5, 5, 1): 18, (1, 3, 5): 18, (3, 4, 2): 18, (2, 0, 4): 17, (4, 2, 0): 17, (2, 2, 0): 17, (5, 0, 3): 17, (3, 5, 0): 17, (1, 5, 3): 17, (1, 2, 4): 17, (4, 1, 3): 17, (3, 4, 3): 17, (2, 3, 1): 16, (3, 3, 0): 16, (0, 5, 3): 16, (5, 0, 5): 16, (3, 3, 5): 16, (2, 5, 2): 16, (0, 5, 2): 16, (4, 1, 2): 16, (5, 2, 3): 16, (5, 3, 0): 16, (2, 1, 3): 16, (4, 5, 5): 16, (3, 5, 2): 16, (1, 2, 2): 16, (4, 1, 5): 15, (1, 5, 5): 15, (4, 2, 2): 15, (4, 2, 1): 15, (1, 4, 3): 15, (3, 2, 5): 15, (5, 4, 0): 15, (5, 1, 3): 15, (5, 4, 5): 15, (3, 1, 2): 15, (2, 2, 1): 14, (3, 2, 1): 14, (5, 3, 3): 14, (2, 3, 4): 14, (4, 3, 1): 14, (4, 3, 0): 14, (3, 4, 0): 13, (3, 3, 4): 13, (5, 2, 0): 13, (0, 2, 2): 12, (0, 5, 4): 12, (3, 0, 3): 12, (3, 2, 0): 11, (0, 3, 2): 8})\n",
-      " Counter({(1, 1, 1): 139, (1, 2, 1): 91, (1, 1, 4): 84, (1, 1, 3): 80, (1, 1, 2): 79, (1, 1, 5): 76, (1, 4, 1): 75, (5, 1, 1): 74, (3, 1, 1): 73, (1, 3, 1): 73, (2, 1, 1): 68, (1, 5, 1): 66, (4, 1, 1): 64, (1, 3, 4): 58, (1, 4, 5): 54, (1, 5, 3): 50, (3, 1, 5): 49, (5, 5, 1): 48, (4, 2, 1): 48, (3, 4, 1): 46, (3, 3, 1): 45, (4, 1, 2): 45, (1, 5, 2): 44, (4, 4, 1): 44, (2, 1, 5): 42, (1, 5, 4): 41, (1, 2, 3): 41, (5, 1, 4): 41, (2, 1, 3): 41, (5, 1, 5): 40, (5, 2, 1): 40, (5, 3, 1): 39, (3, 2, 1): 39, (2, 1, 4): 39, (5, 1, 2): 38, (1, 2, 2): 38, (3, 1, 4): 38, (3, 5, 1): 37, (2, 2, 1): 37, (2, 3, 1): 36, (4, 1, 4): 36, (1, 5, 5): 36, (1, 2, 4): 36, (1, 4, 3): 35, (2, 4, 1): 35, (5, 4, 1): 34, (3, 1, 3): 34, (2, 1, 2): 34, (3, 1, 2): 33, (1, 3, 5): 33, (1, 2, 5): 33, (2, 5, 1): 33, (4, 3, 1): 32, (1, 3, 3): 32, (4, 1, 5): 32, (4, 5, 1): 31, (1, 4, 4): 31, (4, 1, 3): 30, (1, 4, 2): 30, (5, 5, 2): 30, (5, 1, 3): 29, (1, 3, 2): 29, (2, 3, 5): 27, (2, 4, 2): 27, (4, 3, 3): 26, (3, 3, 3): 25, (5, 2, 5): 25, (3, 5, 2): 25, (4, 4, 4): 24, (4, 2, 2): 24, (5, 4, 4): 24, (2, 5, 3): 23, (4, 4, 2): 23, (3, 5, 5): 23, (5, 2, 3): 23, (4, 5, 4): 22, (4, 2, 4): 22, (5, 2, 4): 22, (3, 3, 2): 22, (4, 3, 4): 22, (3, 2, 3): 22, (4, 4, 3): 21, (4, 2, 5): 21, (3, 4, 3): 20, (5, 3, 2): 20, (3, 5, 3): 20, (2, 3, 3): 20, (2, 3, 2): 19, (3, 3, 4): 19, (5, 3, 4): 19, (3, 4, 2): 19, (2, 2, 2): 19, (2, 4, 5): 19, (2, 2, 3): 19, (2, 4, 3): 19, (3, 2, 4): 18, (2, 5, 2): 18, (3, 4, 4): 18, (5, 3, 3): 18, (4, 3, 2): 18, (2, 3, 4): 18, (2, 2, 5): 18, (4, 5, 5): 17, (5, 4, 5): 17, (2, 5, 4): 17, (3, 5, 4): 17, (2, 5, 5): 17, (5, 4, 2): 17, (2, 4, 4): 17, (3, 3, 5): 17, (4, 5, 2): 16, (5, 5, 3): 16, (5, 5, 4): 15, (4, 3, 5): 15, (3, 4, 5): 14, (5, 4, 3): 14, (4, 4, 5): 13, (5, 5, 5): 13, (2, 2, 4): 13, (3, 2, 5): 13, (4, 5, 3): 12, (5, 3, 5): 12, (4, 2, 3): 12, (5, 2, 2): 7, (3, 2, 2): 6})]\n"
+      "[Counter({(2, 2): 10, (0, 0): 9, (3, 3): 9, (4, 5): 7, (1, 2): 7, (3, 5): 7, (1, 1): 7, (0, 4): 7, (2, 0): 6, (2, 4): 6, (2, 1): 5, (5, 4): 5, (1, 4): 5, (0, 3): 4, (2, 5): 3, (0, 2): 3, (4, 0): 3, (3, 1): 3, (5, 2): 2, (0, 5): 2, (4, 1): 2, (5, 0): 2, (5, 3): 2, (4, 2): 2, (1, 5): 2, (5, 1): 2, (4, 3): 2, (3, 0): 2, (3, 4): 1, (1, 3): 1})]\n",
+      "[Counter({(4, 4): 131, (2, 3): 130, (3, 2): 117, (1, 1): 104, (5, 5): 103, (0, 0): 101, (5, 0): 69, (0, 5): 69, (0, 3): 68, (3, 5): 68, (0, 2): 65, (2, 5): 65, (1, 5): 64, (4, 1): 63, (1, 2): 61, (1, 4): 61, (3, 1): 58, (3, 0): 57, (4, 2): 56, (1, 3): 56, (5, 2): 56, (5, 3): 55, (4, 3): 53, (5, 1): 51, (2, 1): 49, (3, 4): 47, (2, 4): 46, (2, 0): 44, (4, 0): 41, (0, 4): 40})]\n",
+      "[Counter({(2, 2): 136, (1, 0): 130, (5, 5): 116, (0, 1): 107, (4, 4): 105, (3, 3): 102, (1, 4): 71, (5, 3): 70, (4, 3): 65, (0, 3): 65, (5, 2): 63, (1, 3): 60, (5, 1): 59, (0, 5): 59, (5, 0): 58, (1, 2): 57, (1, 5): 56, (3, 5): 56, (2, 0): 56, (3, 1): 55, (4, 0): 55, (4, 1): 54, (2, 1): 53, (3, 4): 53, (4, 2): 52, (2, 5): 51, (0, 4): 49, (2, 4): 47, (0, 2): 45, (3, 0): 43})]\n",
+      "[Counter({(1, 0): 119, (2, 3): 119, (3, 2): 118, (4, 5): 111, (0, 1): 111, (5, 4): 102, (2, 0): 72, (5, 3): 65, (1, 4): 64, (3, 0): 63, (0, 2): 62, (3, 1): 61, (0, 4): 59, (4, 0): 59, (0, 5): 58, (2, 5): 57, (5, 2): 57, (1, 5): 57, (5, 1): 57, (2, 4): 57, (1, 3): 57, (4, 2): 56, (2, 1): 55, (4, 1): 55, (3, 5): 53, (3, 4): 52, (0, 3): 51, (1, 2): 50, (5, 0): 48, (4, 3): 43})]\n",
+      "[Counter({(0, 0, 0): 159, (0, 3, 0): 88, (0, 2, 0): 88, (4, 0, 0): 86, (0, 0, 4): 83, (0, 0, 5): 75, (0, 0, 3): 75, (0, 0, 2): 73, (2, 0, 0): 72, (3, 0, 0): 69, (0, 4, 0): 68, (5, 0, 0): 67, (0, 5, 0): 67, (5, 2, 0): 48, (0, 4, 5): 48, (3, 0, 3): 46, (2, 0, 3): 46, (3, 3, 0): 46, (5, 0, 3): 44, (2, 0, 4): 44, (2, 0, 2): 44, (0, 5, 2): 44, (0, 2, 3): 44, (5, 0, 4): 44, (4, 5, 0): 43, (0, 3, 3): 43, (4, 0, 3): 42, (2, 2, 0): 42, (0, 5, 3): 42, (0, 3, 5): 42, (3, 0, 5): 41, (0, 3, 4): 41, (5, 0, 2): 41, (2, 5, 0): 41, (0, 5, 4): 40, (4, 3, 0): 40, (4, 0, 5): 40, (5, 4, 0): 40, (2, 4, 0): 40, (2, 3, 0): 39, (3, 0, 4): 38, (4, 0, 2): 38, (0, 2, 5): 37, (4, 2, 0): 37, (2, 0, 5): 36, (4, 4, 0): 35, (0, 3, 2): 35, (0, 5, 5): 35, (0, 2, 4): 34, (0, 4, 2): 34, (4, 0, 4): 34, (0, 4, 3): 34, (3, 5, 0): 33, (5, 0, 5): 33, (3, 4, 0): 33, (5, 5, 0): 33, (3, 2, 0): 33, (0, 4, 4): 32, (0, 2, 2): 31, (3, 0, 2): 31, (5, 3, 0): 28, (2, 5, 4): 27, (5, 5, 4): 26, (3, 5, 5): 25, (3, 3, 4): 24, (4, 2, 5): 24, (2, 3, 3): 24, (4, 4, 5): 24, (4, 4, 2): 23, (5, 2, 3): 23, (2, 5, 3): 22, (2, 4, 3): 22, (2, 3, 2): 22, (5, 3, 3): 22, (4, 5, 2): 22, (3, 4, 3): 22, (2, 4, 5): 22, (5, 2, 5): 21, (4, 3, 2): 21, (2, 2, 4): 21, (2, 4, 4): 20, (3, 2, 3): 20, (3, 2, 5): 20, (4, 5, 4): 20, (5, 4, 5): 20, (4, 3, 5): 20, (4, 4, 3): 20, (4, 2, 3): 19, (2, 2, 3): 19, (3, 2, 2): 19, (2, 2, 5): 19, (2, 2, 2): 19, (2, 4, 2): 18, (2, 3, 5): 18, (5, 4, 2): 18, (4, 2, 2): 18, (5, 2, 2): 18, (3, 5, 4): 18, (5, 3, 4): 17, (4, 2, 4): 17, (5, 3, 2): 17, (3, 3, 3): 17, (3, 5, 3): 17, (5, 4, 3): 16, (4, 3, 3): 16, (5, 3, 5): 16, (3, 2, 4): 16, (4, 4, 4): 16, (5, 5, 2): 15, (2, 5, 5): 15, (4, 5, 3): 15, (3, 3, 5): 14, (3, 5, 2): 13, (3, 4, 2): 13, (5, 4, 4): 13, (3, 4, 4): 13, (5, 5, 5): 13, (2, 5, 2): 13, (3, 3, 2): 12, (4, 5, 5): 12, (5, 2, 4): 11, (4, 3, 4): 11, (3, 4, 5): 10, (5, 5, 3): 10, (2, 3, 4): 9})\n",
+      " Counter({(0, 0, 0): 142, (0, 3, 0): 86, (3, 0, 0): 83, (4, 0, 0): 80, (0, 5, 0): 80, (5, 0, 0): 78, (0, 0, 5): 75, (2, 0, 0): 74, (0, 2, 0): 74, (0, 0, 2): 72, (0, 0, 4): 68, (0, 4, 0): 63, (0, 0, 3): 55, (5, 0, 4): 49, (0, 4, 3): 47, (2, 0, 3): 45, (4, 0, 5): 43, (4, 3, 0): 43, (0, 5, 2): 42, (0, 3, 2): 41, (2, 4, 0): 41, (4, 2, 0): 41, (4, 0, 3): 40, (5, 3, 0): 40, (0, 5, 4): 40, (0, 2, 4): 39, (5, 5, 0): 39, (5, 0, 5): 39, (4, 4, 0): 39, (2, 2, 0): 39, (2, 3, 0): 38, (0, 5, 5): 37, (0, 4, 5): 37, (0, 3, 4): 37, (3, 2, 0): 36, (0, 2, 2): 36, (0, 4, 4): 35, (5, 4, 0): 35, (3, 0, 2): 35, (3, 4, 0): 34, (0, 2, 3): 34, (2, 5, 0): 34, (0, 5, 3): 34, (3, 0, 3): 34, (5, 2, 0): 33, (2, 0, 2): 33, (5, 5, 3): 32, (3, 0, 4): 32, (4, 4, 3): 32, (0, 2, 5): 32, (3, 5, 0): 32, (4, 0, 2): 32, (3, 0, 5): 32, (4, 5, 0): 31, (0, 3, 3): 31, (5, 5, 4): 30, (5, 2, 4): 30, (4, 3, 4): 30, (2, 0, 5): 29, (3, 2, 3): 29, (4, 0, 4): 29, (2, 2, 2): 29, (2, 0, 4): 28, (5, 0, 2): 28, (5, 4, 2): 28, (3, 2, 5): 28, (0, 3, 5): 27, (3, 5, 5): 27, (0, 4, 2): 27, (5, 0, 3): 27, (3, 3, 2): 27, (3, 3, 0): 26, (5, 4, 5): 26, (5, 3, 3): 25, (3, 4, 4): 25, (5, 3, 5): 25, (2, 5, 2): 24, (4, 2, 5): 23, (2, 4, 5): 23, (2, 3, 4): 23, (2, 3, 3): 22, (5, 5, 5): 22, (5, 2, 3): 22, (2, 5, 4): 22, (4, 5, 2): 22, (3, 4, 3): 21, (2, 2, 4): 21, (4, 5, 5): 21, (3, 4, 2): 21, (2, 5, 3): 20, (3, 3, 4): 20, (4, 5, 4): 19, (2, 2, 5): 19, (3, 2, 4): 19, (3, 3, 3): 18, (4, 4, 4): 18, (3, 5, 3): 18, (4, 3, 3): 18, (4, 4, 5): 18, (5, 4, 4): 18, (2, 3, 5): 17, (2, 4, 4): 17, (5, 3, 2): 17, (4, 4, 2): 16, (2, 4, 2): 16, (2, 4, 3): 15, (4, 3, 5): 15, (5, 5, 2): 15, (4, 2, 2): 15, (5, 2, 5): 15, (4, 5, 3): 14, (3, 2, 2): 14, (5, 2, 2): 13, (5, 3, 4): 13, (5, 4, 3): 13, (2, 2, 3): 12, (4, 3, 2): 12, (4, 2, 3): 11, (3, 3, 5): 10, (3, 4, 5): 9, (2, 5, 5): 9, (3, 5, 2): 9, (2, 3, 2): 8, (4, 2, 4): 8, (3, 5, 4): 8, (1, 1, 2): 7, (1, 1, 1): 6, (4, 1, 1): 5, (2, 1, 1): 5, (1, 2, 1): 4, (5, 1, 2): 4, (1, 1, 3): 4, (2, 1, 4): 4, (3, 1, 2): 4, (5, 2, 1): 4, (4, 3, 1): 3, (1, 3, 3): 3, (1, 3, 2): 3, (1, 5, 1): 3, (3, 1, 1): 3, (5, 1, 5): 3, (1, 1, 5): 3, (2, 1, 5): 3, (1, 4, 2): 2, (1, 5, 4): 2, (3, 2, 1): 2, (1, 3, 5): 2, (3, 1, 4): 2, (5, 1, 1): 2, (2, 1, 2): 2, (1, 1, 4): 2, (4, 1, 5): 2, (1, 2, 4): 2, (4, 2, 1): 2, (2, 4, 1): 1, (5, 5, 1): 1, (2, 3, 1): 1, (1, 2, 5): 1, (4, 5, 1): 1, (1, 3, 1): 1, (3, 4, 1): 1, (1, 4, 1): 1, (2, 5, 1): 1, (5, 1, 3): 1, (4, 4, 1): 1, (1, 3, 4): 1, (3, 1, 3): 1, (2, 2, 1): 1, (1, 5, 5): 1, (2, 1, 3): 1, (1, 4, 3): 1, (3, 5, 1): 1, (3, 3, 1): 1, (4, 1, 2): 1, (1, 5, 2): 1, (1, 2, 3): 1, (3, 1, 5): 1, (5, 4, 1): 1, (5, 1, 4): 1})\n",
+      " Counter({(1, 1, 1): 88, (0, 0, 0): 83, (0, 4, 0): 51, (0, 0, 2): 50, (5, 0, 0): 48, (2, 0, 0): 47, (5, 4, 2): 47, (5, 3, 5): 46, (3, 3, 2): 45, (3, 4, 4): 43, (3, 1, 1): 43, (1, 1, 3): 42, (2, 5, 4): 42, (0, 0, 5): 41, (5, 5, 3): 41, (2, 4, 5): 40, (2, 2, 2): 39, (1, 2, 1): 39, (0, 3, 0): 39, (4, 2, 5): 38, (1, 4, 1): 38, (1, 3, 1): 38, (4, 3, 4): 38, (0, 0, 3): 38, (2, 1, 1): 37, (0, 2, 0): 37, (1, 1, 5): 36, (4, 4, 3): 36, (3, 0, 0): 36, (4, 0, 0): 35, (1, 5, 1): 35, (5, 2, 4): 34, (3, 2, 3): 32, (0, 5, 3): 32, (0, 0, 4): 31, (5, 1, 1): 31, (4, 4, 5): 31, (1, 1, 2): 30, (2, 2, 4): 29, (4, 1, 1): 29, (0, 2, 3): 29, (3, 5, 5): 29, (3, 0, 3): 29, (2, 2, 1): 29, (0, 5, 0): 28, (4, 1, 5): 27, (4, 5, 2): 27, (0, 5, 2): 26, (5, 1, 2): 26, (5, 5, 1): 26, (2, 3, 3): 26, (1, 4, 2): 26, (3, 3, 5): 26, (1, 1, 4): 26, (4, 3, 3): 25, (1, 5, 4): 24, (5, 2, 0): 24, (1, 3, 5): 24, (0, 4, 2): 24, (3, 3, 0): 24, (1, 4, 4): 24, (3, 3, 1): 23, (1, 4, 5): 23, (2, 4, 3): 23, (3, 1, 2): 23, (4, 4, 0): 23, (5, 3, 0): 23, (5, 0, 4): 23, (0, 2, 2): 23, (2, 3, 4): 22, (3, 4, 3): 22, (2, 0, 5): 22, (5, 0, 3): 22, (2, 5, 1): 22, (0, 2, 4): 21, (2, 4, 0): 21, (5, 3, 3): 21, (5, 3, 1): 21, (3, 2, 0): 21, (5, 2, 3): 21, (3, 4, 2): 21, (5, 1, 4): 20, (4, 1, 4): 20, (0, 4, 3): 20, (4, 0, 3): 20, (5, 5, 4): 20, (1, 3, 2): 20, (3, 5, 2): 20, (5, 2, 1): 20, (1, 4, 3): 20, (0, 3, 2): 20, (5, 2, 2): 20, (4, 3, 0): 20, (4, 5, 5): 20, (2, 1, 2): 20, (4, 4, 1): 20, (2, 3, 0): 19, (3, 0, 4): 19, (2, 4, 2): 19, (4, 4, 4): 19, (3, 1, 4): 19, (5, 5, 0): 19, (3, 4, 0): 19, (1, 5, 5): 19, (4, 2, 1): 19, (4, 3, 2): 19, (1, 2, 3): 19, (3, 3, 4): 18, (5, 1, 3): 18, (4, 2, 2): 18, (2, 3, 5): 18, (0, 5, 5): 18, (3, 1, 5): 18, (2, 1, 3): 18, (3, 5, 0): 18, (2, 5, 3): 18, (4, 0, 4): 18, (3, 1, 3): 18, (4, 0, 5): 18, (4, 2, 3): 18, (5, 5, 5): 17, (3, 0, 2): 17, (1, 2, 5): 17, (3, 5, 1): 17, (4, 0, 2): 17, (2, 0, 3): 17, (0, 5, 4): 17, (5, 3, 2): 17, (3, 2, 4): 17, (3, 0, 5): 17, (5, 4, 5): 17, (4, 1, 3): 17, (5, 1, 5): 16, (2, 5, 0): 16, (3, 2, 1): 16, (3, 5, 3): 16, (2, 1, 4): 16, (0, 4, 4): 16, (0, 4, 5): 15, (2, 2, 5): 15, (2, 0, 2): 15, (2, 0, 4): 15, (4, 1, 2): 15, (5, 4, 0): 15, (5, 4, 1): 15, (2, 4, 1): 15, (4, 3, 1): 15, (1, 3, 4): 15, (2, 3, 1): 15, (0, 3, 5): 14, (5, 4, 4): 14, (1, 5, 3): 14, (3, 4, 1): 14, (1, 2, 4): 14, (5, 0, 2): 14, (1, 3, 3): 14, (1, 2, 2): 14, (4, 5, 4): 13, (3, 2, 5): 13, (4, 2, 0): 13, (4, 5, 0): 13, (1, 5, 2): 13, (2, 1, 5): 13, (4, 5, 1): 12, (5, 0, 5): 12, (2, 5, 2): 11, (0, 3, 4): 10, (2, 2, 0): 10, (0, 3, 3): 9, (0, 2, 5): 9})\n",
+      " Counter({(1, 1, 1): 159, (1, 2, 1): 94, (4, 1, 1): 91, (1, 4, 1): 83, (1, 1, 5): 82, (3, 1, 1): 82, (1, 1, 4): 80, (5, 1, 1): 76, (2, 1, 1): 74, (1, 3, 1): 71, (1, 5, 1): 70, (1, 1, 2): 68, (1, 1, 3): 66, (1, 2, 2): 47, (1, 2, 5): 45, (4, 5, 1): 44, (1, 3, 3): 44, (2, 2, 1): 44, (5, 1, 5): 43, (4, 2, 1): 43, (2, 1, 3): 42, (3, 1, 3): 42, (5, 3, 1): 42, (1, 3, 5): 42, (5, 1, 3): 41, (4, 1, 5): 41, (2, 1, 2): 41, (5, 2, 1): 40, (1, 2, 4): 40, (4, 1, 3): 40, (1, 4, 3): 40, (2, 1, 4): 39, (2, 1, 5): 38, (1, 5, 3): 37, (3, 5, 1): 37, (1, 4, 5): 37, (2, 5, 1): 37, (4, 3, 1): 37, (5, 4, 1): 37, (4, 1, 2): 37, (3, 1, 4): 36, (1, 3, 4): 36, (3, 4, 1): 36, (1, 4, 2): 36, (1, 5, 4): 36, (1, 2, 3): 35, (1, 5, 5): 35, (3, 1, 2): 35, (3, 1, 5): 35, (5, 1, 2): 35, (1, 5, 2): 35, (2, 4, 1): 34, (5, 5, 1): 34, (4, 1, 4): 34, (5, 1, 4): 34, (4, 4, 1): 32, (1, 3, 2): 32, (3, 2, 1): 31, (2, 3, 1): 31, (3, 3, 1): 30, (1, 4, 4): 28, (2, 4, 4): 27, (4, 4, 3): 27, (2, 4, 2): 26, (4, 2, 2): 25, (4, 5, 4): 25, (3, 3, 4): 24, (2, 5, 5): 24, (5, 2, 3): 24, (5, 3, 5): 24, (4, 3, 3): 23, (2, 2, 5): 22, (3, 2, 3): 22, (5, 2, 2): 22, (2, 5, 2): 22, (5, 4, 3): 22, (2, 3, 5): 21, (4, 4, 5): 21, (3, 3, 3): 21, (5, 4, 4): 21, (5, 2, 5): 21, (5, 5, 4): 21, (5, 3, 3): 21, (4, 5, 5): 20, (5, 2, 4): 20, (4, 4, 4): 20, (4, 5, 2): 20, (4, 3, 5): 20, (5, 4, 2): 19, (2, 2, 3): 19, (4, 2, 5): 19, (3, 4, 2): 19, (2, 4, 3): 19, (5, 5, 2): 19, (5, 5, 5): 19, (3, 4, 4): 18, (5, 3, 2): 18, (3, 5, 5): 18, (2, 3, 4): 17, (2, 2, 4): 17, (5, 4, 5): 17, (4, 2, 3): 17, (3, 4, 5): 17, (4, 4, 2): 16, (5, 5, 3): 16, (3, 2, 5): 16, (3, 5, 4): 16, (2, 5, 3): 16, (4, 3, 2): 16, (4, 2, 4): 16, (3, 4, 3): 15, (3, 3, 5): 15, (2, 3, 2): 15, (2, 4, 5): 15, (3, 3, 2): 14, (2, 3, 3): 14, (3, 2, 2): 14, (5, 3, 4): 14, (4, 3, 4): 14, (3, 5, 3): 13, (2, 5, 4): 13, (3, 5, 2): 13, (3, 2, 4): 13, (4, 5, 3): 12, (2, 2, 2): 9})]\n"
      ]
     }
    ],
@@ -459,25 +459,25 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "4.164062499999999\n",
-      "0.16503906249999978\n",
-      "0.11230468750000042\n",
-      "-0.12499999999999933\n"
+      "4.3046875\n",
+      "-0.21289062499999978\n",
+      "0.0332031250000005\n",
+      "-0.11621093749999954\n"
      ]
     }
    ],
    "source": [
-    "from povm_toolbox.post_processor import POVMPostprocessor\n",
+    "from povm_toolbox.post_processor import POVMPostProcessor\n",
     "from qiskit.quantum_info import SparsePauliOp\n",
     "\n",
     "observable = SparsePauliOp([\"II\", \"XX\", \"YY\", \"ZZ\"], coeffs=[1, 1, -1, 1])\n",
     "\n",
-    "post_processor1 = POVMPostprocessor(result[0])\n",
+    "post_processor1 = POVMPostProcessor(result[0])\n",
     "exp_value = post_processor1.get_expectation_value(observable=observable)\n",
     "print(exp_value)\n",
     "\n",
     "for pub_result in result[1:4]:\n",
-    "    post_processor = POVMPostprocessor(pub_result)\n",
+    "    post_processor = POVMPostProcessor(pub_result)\n",
     "    exp_value = post_processor.get_expectation_value(observable=observable)\n",
     "    print(exp_value)"
    ]
@@ -491,12 +491,12 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "[ 2.11743164  2.19799805  1.59814453 -0.03149414]\n"
+      "[2.12915039 2.54187012 1.69116211 0.03222656]\n"
      ]
     }
    ],
    "source": [
-    "post_processor5 = POVMPostprocessor(result[4])\n",
+    "post_processor5 = POVMPostProcessor(result[4])\n",
     "observable = SparsePauliOp(\n",
     "    [\"IIZ\", \"IXX\", \"YIY\", \"ZZI\", \"XXX\", \"XYZ\"], coeffs=[1, 1, -1, 1, 0.5, -2]\n",
     ")\n",
@@ -513,7 +513,7 @@
      "name": "stdout",
      "output_type": "stream",
      "text": [
-      "2.197998046874999 ± 0.19136676368204286\n"
+      "2.541870117187499 ± 0.1884352104940961\n"
      ]
     }
    ],
@@ -539,7 +539,7 @@
    "name": "python",
    "nbconvert_exporter": "python",
    "pygments_lexer": "ipython3",
-   "version": "3.10.13"
+   "version": "3.12.2"
   }
  },
  "nbformat": 4,
diff --git a/docs/tutorials/randomized_measurements.ipynb b/docs/tutorials/randomized_measurements.ipynb
index bef23b0..21f03a7 100644
--- a/docs/tutorials/randomized_measurements.ipynb
+++ b/docs/tutorials/randomized_measurements.ipynb
@@ -132,7 +132,7 @@
    "source": [
     "## Classical Shadows\n",
     "\n",
-    "We now look at the implementation of Classical Shaodws measurement."
+    "We now look at the implementation of Classical Shadows measurement."
    ]
   },
   {
@@ -156,7 +156,7 @@
    "metadata": {},
    "source": [
     "## Locally-Biased Classical Shadows\n",
-    "We now look at Classsical Shadows that can be locally-biased."
+    "We now look at Classical Shadows that can be locally-biased."
    ]
   },
   {
@@ -175,7 +175,7 @@
     "    ]\n",
     ")\n",
     "\n",
-    "# The Locally-Biased Classical Shadows (LBCS) measurement uses X,Y,Z measurements with different probabilitiesd.\n",
+    "# The Locally-Biased Classical Shadows (LBCS) measurement uses X,Y,Z measurements with different probabilities.\n",
     "lbcs_implementation = LocallyBiasedClassicalShadows(n_qubit=n_qubit, bias=bias)\n",
     "# Define the default shot budget.\n",
     "lbcs_shots = 4096\n",
@@ -317,7 +317,7 @@
     }
    ],
    "source": [
-    "from povm_toolbox.post_processor.povm_post_processor import POVMPostprocessor\n",
+    "from povm_toolbox.post_processor.povm_post_processor import POVMPostProcessor\n",
     "\n",
     "# Retrieve the `PrimitiveResult` object, which contains 3 `POVMPubResult` objects.\n",
     "result = job.result()\n",
@@ -326,7 +326,7 @@
     "# Loop through the different PUB results\n",
     "for k, pub_result in enumerate(result):\n",
     "    # Instantiate the post-processor from the PUB result.\n",
-    "    post_processor = POVMPostprocessor(pub_result)\n",
+    "    post_processor = POVMPostProcessor(pub_result)\n",
     "    print(f\"PUB number : {k}\")\n",
     "    # If one wants to explicitly retrieve the POVM used for a specific PUB,\n",
     "    # it can be accessed through the metadata of the PUB result.\n",
diff --git a/povm_toolbox/library/classical_shadows.py b/povm_toolbox/library/classical_shadows.py
index d70b4fc..f935c00 100644
--- a/povm_toolbox/library/classical_shadows.py
+++ b/povm_toolbox/library/classical_shadows.py
@@ -13,6 +13,7 @@
 from __future__ import annotations
 
 import numpy as np
+from numpy.random import Generator
 
 from .locally_biased_classical_shadows import LocallyBiasedClassicalShadows
 
@@ -24,14 +25,26 @@ class ClassicalShadows(LocallyBiasedClassicalShadows):
         self,
         n_qubit: int,
         shot_batch_size: int = 1,
+        seed_rng: int | Generator | None = None,
     ):
-        """Construct a classical shadow POVM.
-
-        TODO: The same as above, but also hard-coding the biases to be equally distributed.
+        """Implement a classical shadows POVM.
+
+        This is a special case of a :class:`LocallyBiasedClassicalShadows`, where
+        the bias are taken to be uniform. That is, there is an equal probability
+        to perform a measurement in the Z, X and Y bases.
+
+        Args:
+            n_qubits: the number of qubits.
+            shot_batch_size: number of shots assigned to each sampled measurement basis.
+                If set to 1, a new basis is sampled for each shot.
+            seed_rng: optional seed to fix the :class:`numpy.random.Generator` used to
+                sample measurement bases. The user can also directly provide a random
+                generator. If None, a random seed will be used.
         """
         bias = 1.0 / 3.0 * np.ones(3)
         super().__init__(
             n_qubit=n_qubit,
             bias=bias,
             shot_batch_size=shot_batch_size,
+            seed_rng=seed_rng,
         )
diff --git a/povm_toolbox/library/locally_biased_classical_shadows.py b/povm_toolbox/library/locally_biased_classical_shadows.py
index 3a990b2..2de2bda 100644
--- a/povm_toolbox/library/locally_biased_classical_shadows.py
+++ b/povm_toolbox/library/locally_biased_classical_shadows.py
@@ -13,6 +13,7 @@
 from __future__ import annotations
 
 import numpy as np
+from numpy.random import Generator
 
 from .randomized_projective_measurements import RandomizedProjectiveMeasurements
 
@@ -25,10 +26,25 @@ class LocallyBiasedClassicalShadows(RandomizedProjectiveMeasurements):
         n_qubit: int,
         bias: np.ndarray,
         shot_batch_size: int = 1,
+        seed_rng: int | Generator | None = None,
     ):
-        """Construct a locally-biased classical shadow POVM.
-
-        TODO: The same as above, but the angles are hard-coded to be X/Y/Z for all qubits.
+        """Implement a locally-biased classical shadow POVM.
+
+        This is a special case of a :class:`RandomizedProjectiveMeasurements`, where the PVMs are
+        chosen to be Z-, X- and Y-measurements.
+
+        Args:
+            n_qubits: the number of qubits.
+            bias: can be either 1D or 2D. If 1D, it should contain float values indicating the bias
+                for measuring in each of the PVMs. I.e., its length equals the number of PVMs (3).
+                These floats should sum to 1. If 2D, it will have a new set of biases for each
+                qubit.
+            shot_batch_size: number of shots assigned to each sampled PVM. If set to 1, a new PVM
+                is sampled for each shot.
+            seed_rng: optional seed to fix the :class:`numpy.random.Generator` used to sample PVMs.
+                The Z-,X-,Y-measurements are sampled according to the probability distribution(s)
+                specified by ``bias``. The user can also directly provide a random generator. If
+                None, a random seed will be used.
         """
         angles = np.array([0.0, 0.0, 0.5 * np.pi, 0.0, 0.5 * np.pi, 0.5 * np.pi])
         assert bias.shape[-1] == 3
@@ -37,4 +53,5 @@ class LocallyBiasedClassicalShadows(RandomizedProjectiveMeasurements):
             bias=bias,
             angles=angles,
             shot_batch_size=shot_batch_size,
+            seed_rng=seed_rng,
         )
diff --git a/povm_toolbox/library/povm_implementation.py b/povm_toolbox/library/povm_implementation.py
index 13dada9..a8e63c6 100644
--- a/povm_toolbox/library/povm_implementation.py
+++ b/povm_toolbox/library/povm_implementation.py
@@ -49,6 +49,8 @@ class POVMImplementation(ABC, Generic[MetadataT]):
         """
         super().__init__()
         self.n_qubit = n_qubit
+        # TODO: add qubit_specifier or layout to apply, see issue #15
+
         self.msmt_qc: QuantumCircuit
 
     def __repr__(self) -> str:
@@ -57,7 +59,7 @@ class POVMImplementation(ABC, Generic[MetadataT]):
 
     @abstractmethod
     def _build_qc(self) -> QuantumCircuit:
-        """Return the parametetrized quantum circuit to implement the POVM."""
+        """Return the parametrized quantum circuit to implement the POVM."""
 
     @abstractmethod
     def to_sampler_pub(
@@ -85,7 +87,7 @@ class POVMImplementation(ABC, Generic[MetadataT]):
         Returns:
             A tuple of a sampler pub and a dictionary of metadata which include
             the ``POVMImplementation`` object itself. The metadata should contain
-            all the information neceassary to extract the POVM outcomes out of raw
+            all the information necessary to extract the POVM outcomes out of raw
             bitstrings.
         """
         # TODO: figure out if it would be better to pass these arguments as a
@@ -105,7 +107,8 @@ class POVMImplementation(ABC, Generic[MetadataT]):
             circuit of this POVM implementation.
         """
         # Create a copy of the circuit and remove final measurements:
-        dest_circuit = circuit.remove_final_measurements(inplace=False)
+        dest_circuit = circuit.copy()
+        dest_circuit.remove_final_measurements(inplace=True)
 
         if dest_circuit.layout is None:
             # Basic one-to-one layout
diff --git a/povm_toolbox/library/randomized_projective_measurements.py b/povm_toolbox/library/randomized_projective_measurements.py
index 815af48..28a4114 100644
--- a/povm_toolbox/library/randomized_projective_measurements.py
+++ b/povm_toolbox/library/randomized_projective_measurements.py
@@ -15,6 +15,7 @@ from __future__ import annotations
 from collections import Counter
 
 import numpy as np
+from numpy.random import Generator, default_rng
 from qiskit.circuit import ClassicalRegister, ParameterVector, QuantumCircuit, QuantumRegister
 from qiskit.primitives.containers import DataBin, make_data_bin
 from qiskit.primitives.containers.bindings_array import BindingsArray
@@ -38,6 +39,7 @@ class RandomizedProjectiveMeasurements(POVMImplementation[RPMMetadata]):
         bias: np.ndarray,
         angles: np.ndarray,
         shot_batch_size: int = 1,
+        seed_rng: int | Generator | None = None,
     ) -> None:
         """Implement a product POVM through the randomization of single-qubit projective measurement.
 
@@ -56,20 +58,36 @@ class RandomizedProjectiveMeasurements(POVMImplementation[RPMMetadata]):
                 for each qubit.
             shot_batch_size: number of shots assigned to each sampled PVM. If set to 1, a new PVM
                 is sampled for each shot.
+            seed_rng: optional seed to fix the :class:`numpy.random.Generator` used to sample PVMs.
+                The PVMs are sampled according to the probability distribution(s) specified by
+                ``bias``. The user can also directly provide a random generator. If None, a random
+                seed will be used.
 
         Raises:
-            ValueError: TODO.
+            ValueError: If the shape of ``bias`` is not compatible with the shape of ``angles``.
+            ValueError: If the shape of ``bias`` is not compatible with ``n_qubit``.
+            ValueError: If there is a negative value in the probability distribution(s) specified
+                by ``bias``.
+            ValueError: If the probability distribution(s) specified by ``bias`` don't sum up to 1.
+            ValueError: If the shape of ``angles`` is not compatible with ``n_qubit``.
+            TypeError: If the type of ``seed_rng`` is not valid.
         """
         super().__init__(n_qubit)
 
         if 2 * bias.shape[-1] != angles.shape[-1]:
-            raise ValueError(f"TODO: error message. {bias.shape[-1]}, {angles.shape[-1]}.")
+            raise ValueError(
+                f"The shape of ``bias`` ({bias.shape}) is not compatible with the shape"
+                f" of ``angles`` ({angles.shape})."
+            )
         self._n_PVMs = bias.shape[-1]
 
         if bias.ndim == 1:
             bias = np.tile(bias, (self.n_qubit, 1))
         elif (bias.ndim == 2 and bias.shape[0] != self.n_qubit) or bias.ndim > 2:
-            raise ValueError("TODO: error message.")
+            raise ValueError(
+                f"The shape of ``bias`` ({bias.shape}) is not compatible with"
+                f" ``n_qubit`` ({n_qubit})."
+            )
         if np.any(bias < 0.0):
             raise ValueError(
                 "There should not be any negative values in the probability distribution parameters."
@@ -81,13 +99,26 @@ class RandomizedProjectiveMeasurements(POVMImplementation[RPMMetadata]):
         if angles.ndim == 1:
             angles = np.tile(angles, (self.n_qubit, 1))
         elif (angles.ndim == 2 and angles.shape[0] != self.n_qubit) or angles.ndim > 2:
-            raise ValueError("TODO: error message.")
+            raise ValueError(
+                f"The shape of ``angles`` ({angles.shape}) is not compatible with"
+                f" ``n_qubit`` ({n_qubit})."
+            )
         self.angles = angles.reshape((self.n_qubit, self._n_PVMs, 2))
 
         self.msmt_qc = self._build_qc()
 
         self.shot_batch_size = shot_batch_size
 
+        self._rng: Generator
+        if seed_rng is None:
+            self._rng = default_rng()
+        elif isinstance(seed_rng, int):
+            self._rng = default_rng(seed_rng)
+        elif isinstance(seed_rng, Generator):
+            self._rng = seed_rng
+        else:
+            raise TypeError(f"The type of `seed_rng` ({type(seed_rng)}) is not valid.")
+
     def _build_qc(self) -> QuantumCircuit:
         """Build the quantum circuit that implements the measurement.
 
@@ -101,7 +132,7 @@ class RandomizedProjectiveMeasurements(POVMImplementation[RPMMetadata]):
         measurement. Note that we have :math:``U(theta, phi, lambda)_dag = U(-theta, -lambda, -phi)``.
 
         Returns:
-            Paramnetrized quantum circuit that can implement any product of single-qubit projective measurements.
+            Parametrized quantum circuit that can implement any product of single-qubit projective measurements.
         """
         self._qc_theta = ParameterVector("theta", length=self.n_qubit)
         self._qc_phi = ParameterVector("phi", length=self.n_qubit)
@@ -139,9 +170,9 @@ class RandomizedProjectiveMeasurements(POVMImplementation[RPMMetadata]):
         to it. As the measurement circuit is parametrized, its parameters values
         are concatenated with the parameter values associated with the supplied
         quantum circuit. TODO: explain how the distribution of the shots is done.
-        If a randomized POVM is used, the enduser's parameters have to be
-        concatenated with the sampled POVM parameters. The POVM parametersare a
-        2-D (TODO: update docstrings in next PR, which will change this method anyways)
+        If a randomized POVM is used, the end user's parameters have to be
+        concatenated with the sampled POVM parameters. The POVM parameters are a
+        2-D (TODO: update docstring in next PR, which will change this method anyways)
 
         Args:
             circuit: A quantum circuit.
@@ -154,7 +185,7 @@ class RandomizedProjectiveMeasurements(POVMImplementation[RPMMetadata]):
         Returns:
             A tuple of a sampler pub and a dictionary of metadata which include
             the ``POVMImplementation`` object itself. The metadata should contain
-            all the information neceassary to extract the POVM outcomes out of raw
+            all the information necessary to extract the POVM outcomes out of raw
             bitstrings. (TODO: explain what is it exactly)
 
         Raises:
@@ -186,7 +217,7 @@ class RandomizedProjectiveMeasurements(POVMImplementation[RPMMetadata]):
         #   .shape = (5, num_batches)
         #   .num_parameters = 3 + 2*n_qubit
         # The data is stored as a dictionary of arrays where each array has a shape such that :
-        #   - the last dismension corresponds to the number of parameters stored in this entry
+        #   - the last dimension corresponds to the number of parameters stored in this entry
         #     of the dictionary
         #   - the leading shape corresponds to the different sets of parameter values and is shared
         #     amongst all dictionary entries (it is the `.shape` of the `BindingsArray`)
@@ -206,7 +237,7 @@ class RandomizedProjectiveMeasurements(POVMImplementation[RPMMetadata]):
             # this particular qubit. We draw a PVM for each batch of shots and for
             # each set of circuit parameter values supplied by the user through the
             # :method:``POVMSampler.run`` method.
-            pvm_idx[..., i] = np.random.choice(
+            pvm_idx[..., i] = self._rng.choice(
                 self._n_PVMs,
                 size=circuit_binding.size * num_batches,
                 replace=True,
diff --git a/povm_toolbox/post_processor/__init__.py b/povm_toolbox/post_processor/__init__.py
index b85eba5..3ef47de 100644
--- a/povm_toolbox/post_processor/__init__.py
+++ b/povm_toolbox/post_processor/__init__.py
@@ -16,11 +16,11 @@
    :toctree: ../stubs/
    :nosignatures:
 
-   POVMPostprocessor
+   POVMPostProcessor
 """
 
-from .povm_post_processor import POVMPostprocessor
+from .povm_post_processor import POVMPostProcessor
 
 __all__ = [
-    "POVMPostprocessor",
+    "POVMPostProcessor",
 ]
diff --git a/povm_toolbox/post_processor/povm_post_processor.py b/povm_toolbox/post_processor/povm_post_processor.py
index 4c483f1..0d58e62 100644
--- a/povm_toolbox/post_processor/povm_post_processor.py
+++ b/povm_toolbox/post_processor/povm_post_processor.py
@@ -15,28 +15,56 @@ from __future__ import annotations
 import numpy as np
 from qiskit.quantum_info import SparsePauliOp
 
+from povm_toolbox.quantum_info.base_dual import BaseDUAL
 from povm_toolbox.sampler import POVMPubResult
 
 
-class POVMPostprocessor:
+class POVMPostProcessor:
     """A common POVM result post-processor."""
 
     def __init__(
         self,
         povm_sample: POVMPubResult,
-        alphas: np.ndarray | None = None,
+        dual_class: type[BaseDUAL] | None = None,
     ) -> None:
         """Initialize the POVM post-processor.
 
         Args:
             povm_sample: a result from a POVM sampler run.
-            alphas: parameters of the frame superoperator of the POVM.
+            dual_class: the subclass of :class:`.BaseDUAL` that will be used to
+                build the dual frame to the POVM of ``povm_sample``. The dual
+                frame is then used to compute the decomposition weights of any
+                observable.
         """
         self.povm = povm_sample.metadata.povm_implementation.definition()
         self.counts: np.ndarray = povm_sample.get_counts()  # type: ignore
         # TODO: find a way to avoid the type ignore
-        if alphas is not None:
-            self.povm.alphas = alphas
+
+        if dual_class is None:
+            dual_class = self.povm.default_dual_class
+        elif not issubclass(dual_class, BaseDUAL):
+            raise TypeError
+
+        self._dual_class = dual_class
+        self._dual: BaseDUAL | None = None
+
+    @property
+    def dual(self) -> BaseDUAL:
+        """Return the dual that is used.
+
+        .. warning::
+            If the dual frame is not already built, this could be computationally demanding.
+        """
+        if self._dual is None:
+            self._dual = self._dual_class.build_dual_from_frame(self.povm)
+        return self._dual
+
+    def optimize(self, **options) -> None:
+        """Optimize the dual inplace."""
+        # TODO: improve efficiency, we are doing the heavy computation twice here
+        # if the dual was not built before (first when we access :attr:`.dual` and
+        # second when we optimize it).
+        self._dual = self.dual.optimize(self.povm, **options)
 
     def get_expectation_value(
         self, observable: SparsePauliOp, loc: int | tuple[int, ...] | None = None
@@ -75,7 +103,7 @@ class POVMPostprocessor:
         # TODO: performance gains to be made when computing the omegas here ?
         # like storing the dict of computed omegas and updating the dict with the
         # missing values that were still never computed.
-        omegas = dict(self.povm.get_omegas(observable, set(count.keys())))  # type: ignore
+        omegas = dict(self.dual.get_omegas(observable, set(count.keys())))  # type: ignore
         for outcome in count:
             exp_val += count[outcome] * omegas[outcome]
             std += count[outcome] * omegas[outcome] ** 2
diff --git a/povm_toolbox/quantum_info/__init__.py b/povm_toolbox/quantum_info/__init__.py
index 2ab7ef0..1e2885d 100644
--- a/povm_toolbox/quantum_info/__init__.py
+++ b/povm_toolbox/quantum_info/__init__.py
@@ -20,8 +20,12 @@
    MultiQubitPOVM
    SingleQubitPOVM
    ProductPOVM
+   BaseFrame
+   BaseDUAL
 """
 
+from .base_dual import BaseDUAL
+from .base_frame import BaseFrame
 from .base_povm import BasePOVM
 from .multi_qubit_povm import MultiQubitPOVM
 from .product_povm import ProductPOVM
@@ -32,4 +36,6 @@ __all__ = [
     "MultiQubitPOVM",
     "SingleQubitPOVM",
     "ProductPOVM",
+    "BaseFrame",
+    "BaseDUAL",
 ]
diff --git a/povm_toolbox/quantum_info/base_dual.py b/povm_toolbox/quantum_info/base_dual.py
new file mode 100644
index 0000000..5df5a73
--- /dev/null
+++ b/povm_toolbox/quantum_info/base_dual.py
@@ -0,0 +1,63 @@
+# (C) Copyright IBM 2024.
+#
+# This code is licensed under the Apache License, Version 2.0. You may
+# obtain a copy of this license in the LICENSE.txt file in the root directory
+# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# Any modifications or derivative works of this code must retain this
+# copyright notice, and modified files need to carry a notice indicating
+# that they have been altered from the originals.
+
+"""TODO."""
+
+from __future__ import annotations
+
+from abc import ABC, abstractmethod
+
+import numpy as np
+from qiskit.quantum_info import Operator, SparsePauliOp
+
+from .base_frame import BaseFrame, LabelT
+
+
+class BaseDUAL(BaseFrame[LabelT], ABC):
+    """Abstract base class that contains all methods that any specific DUAL subclass should implement."""
+
+    @property
+    def n_outcomes(self) -> int:
+        """Give the number of outcomes of the DUAL."""
+        return self.n_operators
+
+    @abstractmethod
+    def get_omegas(
+        self,
+        obs: SparsePauliOp | Operator,
+        outcome_idx: LabelT | set[LabelT] | None = None,
+    ) -> float | dict[LabelT, float] | np.ndarray:
+        """Return the decomposition weights of the provided observable into the POVM effects to which ``self`` is a dual."""
+        return self.analysis(obs, outcome_idx)
+
+    @abstractmethod
+    def is_dual_to(self, frame: BaseFrame) -> bool:
+        """Check if `self` is a dual to another frame."""
+
+    @abstractmethod
+    def optimize(self, frame: BaseFrame, **options) -> None:
+        """Optimize the dual to `frame` inplace.
+
+        Args:
+            frame: The primal frame to which ``self`` is a dual.
+            options: keyword arguments specifying how to optimize ``self``.
+        """
+
+    @classmethod
+    @abstractmethod
+    def build_dual_from_frame(cls, frame: BaseFrame) -> BaseDUAL:
+        """Construct a dual frame to another frame.
+
+        Args:
+            frame: The primal frame from which we will build the dual frame.
+
+        Returns:
+            A dual frame to the supplied ``frame``.
+        """
diff --git a/povm_toolbox/quantum_info/base_frame.py b/povm_toolbox/quantum_info/base_frame.py
new file mode 100644
index 0000000..3a232c4
--- /dev/null
+++ b/povm_toolbox/quantum_info/base_frame.py
@@ -0,0 +1,77 @@
+# (C) Copyright IBM 2024.
+#
+# This code is licensed under the Apache License, Version 2.0. You may
+# obtain a copy of this license in the LICENSE.txt file in the root directory
+# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# Any modifications or derivative works of this code must retain this
+# copyright notice, and modified files need to carry a notice indicating
+# that they have been altered from the originals.
+
+"""TODO."""
+
+from __future__ import annotations
+
+from abc import ABC, abstractmethod
+from typing import Generic, TypeVar
+
+import numpy as np
+from qiskit.quantum_info import Operator, SparsePauliOp
+
+# Each operator in the frame is identified by a label. ``LabelT`` is the type of
+# these labels. For instance, labels could be strings, integers, or it could be
+# tuples of integers among other possibilities.
+LabelT = TypeVar("LabelT")
+
+
+class BaseFrame(ABC, Generic[LabelT]):
+    """Abstract base class that contains all methods that any specific frame should implement.
+
+    A frame is a generalization of the notion of the basis of a vector space to sets that may
+    not necessarily be linearly independent. Consider a Hilbert space of finite dimension :math:`d`,
+    then the set of Hermitian operators is an operator-valued vector space on the Hilbert space.
+    Therefore, a set of Hermitian operators that spans the entire Hilbert space is said to be a
+    frame.
+
+    If a set of operators does not span the entire Hilbert space, it can still be considered as a
+    frame on the subspace it spans.
+    """
+
+    @property
+    @abstractmethod
+    def informationally_complete(self) -> bool:
+        """Return if the frame spans the entire Hilbert space."""
+
+    @property
+    @abstractmethod
+    def dimension(self) -> int:
+        """Give the dimension of the Hilbert space on which the effects act."""
+
+    @property
+    def n_subsystems(self) -> int:
+        r"""Return the number of subsystems which the effects act on.
+
+        For qubits, this is always :math:`\log_2(`:attr:`.dimension`:math:`)`.
+        """
+        return int(np.log2(self.dimension))
+
+    @property
+    @abstractmethod
+    def n_operators(self) -> int:
+        """Give the number of effects of the frame."""
+
+    @abstractmethod
+    def _check_validity(self) -> None:
+        """Check if frame axioms are fulfilled."""
+
+    @abstractmethod
+    def __len__(self) -> int:
+        """Return the number of effects of the POVM."""
+
+    @abstractmethod
+    def analysis(
+        self,
+        hermitian_op: SparsePauliOp | Operator,
+        frame_op_idx: LabelT | set[LabelT] | None = None,
+    ) -> float | dict[LabelT, float] | np.ndarray:
+        """Return the frame coefficients of ``hermitian_op``."""
diff --git a/povm_toolbox/quantum_info/base_povm.py b/povm_toolbox/quantum_info/base_povm.py
index 86fa58f..6504606 100644
--- a/povm_toolbox/quantum_info/base_povm.py
+++ b/povm_toolbox/quantum_info/base_povm.py
@@ -13,63 +13,29 @@
 from __future__ import annotations
 
 from abc import ABC, abstractmethod
-from typing import Any
 
 import numpy as np
-from qiskit.quantum_info import DensityMatrix, Operator
+from qiskit.quantum_info import DensityMatrix, SparsePauliOp, Statevector
 
+from .base_dual import BaseDUAL
+from .base_frame import BaseFrame, LabelT
 
-class BasePOVM(ABC):
-    """Abstract base class that contains all methods that any specific POVM subclass should implement."""
 
-    @property
-    @abstractmethod
-    def dimension(self) -> int:
-        """Give the dimension of the Hilbert space on which the effects act."""
-
-    @property
-    def n_subsystems(self) -> int:
-        """Return the number of subsystems which the effects act on.
+class BasePOVM(BaseFrame[LabelT], ABC):
+    """Abstract base class that contains all methods that any specific POVM subclass should implement."""
 
-        For qubits, this is always :math:`log2(self.dimension)`.
-        """
-        return int(np.log2(self.dimension))
+    default_dual_class: type[BaseDUAL]
 
     @property
-    @abstractmethod
     def n_outcomes(self) -> int:
         """Give the number of outcomes of the POVM."""
-
-    @property
-    @abstractmethod
-    def alphas(self) -> np.ndarray | list[np.ndarray]:
-        """Parameters of the dual frame."""
-
-    @alphas.setter
-    @abstractmethod
-    def alphas(self, var: np.ndarray | list[np.ndarray]) -> None:
-        """Set parameters of the dual frame."""
-
-    @abstractmethod
-    def _check_validity(self) -> None:
-        """Check if POVM axioms are fulfilled."""
-
-    @abstractmethod
-    def __len__(self) -> int:
-        """Return the number of outcomes of the POVM."""
+        return self.n_operators
 
     @abstractmethod
     def get_prob(
         self,
-        rho: DensityMatrix,
-        outcome_idx: Any | set[Any] | None = None,
-    ) -> float | dict[Any, float] | np.ndarray:
+        rho: SparsePauliOp | DensityMatrix | Statevector,
+        outcome_idx: LabelT | set[LabelT] | None = None,
+    ) -> float | dict[LabelT, float] | np.ndarray:
         """Return the outcome probabilities given a state rho."""
-
-    @abstractmethod
-    def get_omegas(
-        self,
-        obs: Operator,
-        outcome_idx: Any | set[Any] | None = None,
-    ) -> float | dict[Any, float] | np.ndarray:
-        """Return the decomposition weights of obserservable `obs` into the POVM effects."""
+        return self.analysis(rho, outcome_idx)
diff --git a/povm_toolbox/quantum_info/multi_qubit_dual.py b/povm_toolbox/quantum_info/multi_qubit_dual.py
new file mode 100644
index 0000000..83a7060
--- /dev/null
+++ b/povm_toolbox/quantum_info/multi_qubit_dual.py
@@ -0,0 +1,136 @@
+# (C) Copyright IBM 2024.
+#
+# This code is licensed under the Apache License, Version 2.0. You may
+# obtain a copy of this license in the LICENSE.txt file in the root directory
+# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# Any modifications or derivative works of this code must retain this
+# copyright notice, and modified files need to carry a notice indicating
+# that they have been altered from the originals.
+
+"""TODO."""
+
+from __future__ import annotations
+
+import numpy as np
+from qiskit.quantum_info import DensityMatrix, Operator, SparsePauliOp, Statevector
+
+from povm_toolbox.utilities import double_ket_to_matrix
+
+from .base_dual import BaseDUAL
+from .base_frame import BaseFrame
+from .multi_qubit_frame import MultiQubitFrame
+
+
+class MultiQubitDUAL(MultiQubitFrame, BaseDUAL):
+    """Class that collects all information that any MultiQubit DUAL should specify.
+
+    This is a representation of a dual frame. Its elements are specified as a list
+    of :class:`~qiskit.quantum_info.Operator`.
+    """
+
+    def get_omegas(
+        self, obs: SparsePauliOp | Operator, outcome_idx: int | set[int] | None = None
+    ) -> float | dict[int, float] | np.ndarray:
+        r"""Return the decomposition weights of the provided observable into the POVM effects to which ``self`` is a dual.
+
+        Here the POVM itself is not explicitly needed, its dual is sufficient. Given
+        an observable :math:`O` which is in the span of a given POVM, one can write the
+        observable :math:`O` as the weighted sum of the POVM effects, :math:`O = \sum_k w_k M_k`
+        for real weights :math:`w_k`. There might be infinitely many valid sets of weight.
+        This method returns a possible set of weights.
+
+        Args:
+            obs: the observable to be decomposed into the POVM effects.
+            outcome_idx: label(s) indicating which decomposition weights are queried.
+
+        Returns:
+            An array of decomposition weights.
+        """
+        return self.analysis(obs, outcome_idx)
+
+    def is_dual_to(self, frame: BaseFrame) -> bool:
+        """Check if ``self`` is a dual to another frame."""
+        if isinstance(frame, MultiQubitFrame):
+            return np.allclose(frame @ np.conj(self).T, np.eye(self.dimension**2), atol=1e-6)
+        raise NotImplementedError
+
+    def optimize(self, frame: BaseFrame, **options) -> None:
+        """Optimize the dual to ``frame`` inplace.
+
+        Args:
+            frame: The primal frame to which ``self`` is a dual.
+            options: keyword arguments specifying how to optimize ``self``.
+        """
+        # If a state is provided, the state-optimal dual is computed.
+        if (state := options.get("state", None)) is not None:
+            if isinstance(state, (Statevector, DensityMatrix)):
+                state = Operator(state)
+            elif not isinstance(state, Operator):
+                raise TypeError
+            # Compute the corresponding alpha-parameters.
+            alphas = tuple(frame.analysis(state))  # type: ignore
+            self.operators = self._build_dual_operators(frame, alphas)
+
+        # Otherwise if alpha-parameters are provided, they will be used to
+        # optimize ``self``.
+        elif (alphas := options.get("alphas", None)) is not None:
+            self.operators = self._build_dual_operators(frame, alphas)
+
+    @staticmethod
+    def _build_dual_operators(
+        frame: BaseFrame, alphas: tuple[float, ...] | None = None
+    ) -> list[Operator]:
+        """Construct dual operators of a frame.
+
+        Args:
+            frame: The primal frame from which we will build dual operators.
+
+        Returns:
+            A list of dual operators to the ``frame`` operators.
+        """
+        if isinstance(frame, MultiQubitFrame):
+            # Set default values for alphas if none is provided.
+            if alphas is None:
+                alphas = tuple(np.trace(frame_op.data) for frame_op in frame.operators)
+            # Check that the number of alpha-parameters match the number of operators
+            # forming the ``frame``.
+            elif len(alphas) != frame.n_operators:
+                raise ValueError(
+                    f"The number of alpha-parameters should be equal to the number of"
+                    f" operators in the frame ({frame.n_operators}). Here, {len(alphas)}"
+                    " parameters were provided."
+                )
+
+            # Set the weighting matrix according to the alpha-parameters
+            diag_trace = np.diag([1.0 / alpha for alpha in alphas])
+            # Compute the weighed frame super-operator.
+            superop = frame @ diag_trace @ np.conj(frame).T
+
+            # Solve the linear system to find the dual operators.
+            dual_operators_array = np.linalg.solve(
+                superop,
+                frame @ diag_trace,
+            )
+            # Convert dual operators from double-ket to operator representation.
+            dual_operators = [Operator(double_ket_to_matrix(op)) for op in dual_operators_array.T]
+
+            return dual_operators
+
+        # We could build a ``MultiQubitDUAL`` instance (i.e. joint dual frame) that
+        # is a dual frame to a ``ProductFrame``, but we have not implemented this yet.
+        raise NotImplementedError(f"Not implemented for {type(frame)}")
+
+    @classmethod
+    def build_dual_from_frame(
+        cls, frame: BaseFrame, alphas: tuple[float, ...] | None = None
+    ) -> MultiQubitDUAL:
+        """Construct a dual frame to another frame.
+
+        Args:
+            frame: The primal frame from which we will build the dual frame.
+
+        Returns:
+            A multi-qubit dual frame to the supplied ``frame``.
+        """
+        return cls(cls._build_dual_operators(frame, alphas))
diff --git a/povm_toolbox/quantum_info/multi_qubit_frame.py b/povm_toolbox/quantum_info/multi_qubit_frame.py
new file mode 100644
index 0000000..ec5815a
--- /dev/null
+++ b/povm_toolbox/quantum_info/multi_qubit_frame.py
@@ -0,0 +1,213 @@
+# (C) Copyright IBM 2024.
+#
+# This code is licensed under the Apache License, Version 2.0. You may
+# obtain a copy of this license in the LICENSE.txt file in the root directory
+# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# Any modifications or derivative works of this code must retain this
+# copyright notice, and modified files need to carry a notice indicating
+# that they have been altered from the originals.
+
+"""TODO."""
+
+from __future__ import annotations
+
+import sys
+
+if sys.version_info < (3, 11):
+    from typing_extensions import Self
+else:
+    from typing import Self
+
+import numpy as np
+from qiskit.exceptions import QiskitError
+from qiskit.quantum_info import Operator, SparsePauliOp
+
+from povm_toolbox.utilities import matrix_to_double_ket
+
+from .base_frame import BaseFrame
+
+
+class MultiQubitFrame(BaseFrame[int]):
+    """Class that collects all information that any MultiQubit frame should specify.
+
+    This is a representation of an operator-valued vector space frame. The effects are
+    specified as a list of :class:`~qiskit.quantum_info.Operator`.
+    """
+
+    def __init__(self, list_operators: list[Operator]) -> None:
+        r"""Initialize from explicit operators.
+
+        Args:
+            list_operators: list that contains the explicit frame operators. The
+                length of the list is the number of operators of the frame.
+
+
+        Raises:
+            ValueError: if the frame operators do not have a correct shape. They should all
+                be square and of the same dimension.
+        """
+        self._n_operators: int = len(list_operators)
+        self._dimension: int = list_operators[0].dim[0]
+        for frame_op in list_operators:
+            if not (self._dimension == frame_op.dim[0] and self._dimension == frame_op.dim[1]):
+                raise ValueError(
+                    f"Frame operators need to be square ({frame_op.dim[0]},{frame_op.dim[1]}) and all of the same dimension."
+                )
+        self._operators: list[Operator] = list_operators
+
+        self._pauli_operators: list[dict[str, complex]] | None = None
+
+        self._array: np.ndarray = np.ndarray((self.dimension**2, self.n_operators), dtype=complex)
+        for k, frame_op in enumerate(list_operators):
+            self._array[:, k] = matrix_to_double_ket(frame_op.data)
+
+        self._informationally_complete: bool = bool(
+            np.linalg.matrix_rank(self._array) == self.dimension**2
+        )
+
+        self._check_validity()
+
+    @property
+    def informationally_complete(self) -> bool:
+        """Return if the frame spans the entire Hilbert space."""
+        return self._informationally_complete
+
+    @property
+    def dimension(self) -> int:
+        """Give the dimension of the Hilbert space on which the frame operators act."""
+        return self._dimension
+
+    @property
+    def n_operators(self) -> int:
+        """Give the number of outcomes of the frame."""
+        return self._n_operators
+
+    @property
+    def operators(self) -> list[Operator]:
+        """Return the list of frame operators."""
+        return self._operators
+
+    @operators.setter
+    def operators(self, new_operators: list[Operator]):
+        """Set the frame operators."""
+        self._n_operators = len(new_operators)
+        self._dimension = new_operators[0].dim[0]
+        for frame_op in new_operators:
+            if not (self._dimension == frame_op.dim[0] and self._dimension == frame_op.dim[1]):
+                raise ValueError(
+                    f"Frame operators need to be square ({frame_op.dim[0]},{frame_op.dim[1]}) and all of the same dimension."
+                )
+
+        self._operators = new_operators
+
+        self._pauli_operators = None
+
+        self._array = np.ndarray((self.dimension**2, self.n_operators), dtype=complex)
+        for k, frame_op in enumerate(new_operators):
+            self._array[:, k] = matrix_to_double_ket(frame_op.data)
+
+        self._informationally_complete = bool(
+            np.linalg.matrix_rank(self._array) == self.dimension**2
+        )
+
+        self._check_validity()
+
+    @property
+    def pauli_operators(self) -> list[dict[str, complex]]:
+        """Convert the internal frame operators to Pauli form.
+
+        Raises:
+            ValueError: when the frame operators are not N-qubit operators.
+        """
+        if self._pauli_operators is None:
+            try:
+                self._pauli_operators = [
+                    dict(SparsePauliOp.from_operator(op).label_iter()) for op in self.operators
+                ]
+            except QiskitError as exc:
+                raise ValueError("Failed to convert frame operators to Pauli form.") from exc
+        return self._pauli_operators
+
+    def _check_validity(self) -> None:
+        r"""Check if frame axioms are fulfilled.
+
+        Raises:
+            ValueError: if any of the frame operators is not hermitian.
+        """
+        for k, op in enumerate(self.operators):
+            if not np.allclose(op, op.adjoint(), atol=1e-5):
+                raise ValueError(f"Frame operator {k} is not hermitian.")
+
+    def __getitem__(self, index: slice) -> Operator | list[Operator]:
+        r"""Return a frame operator or a list of frame operators.
+
+        Args:
+            index: indicate the operator(s) to be returned.
+
+        Returns:
+            The operator or list of operators corresponding to the index.
+        """
+        return self.operators[index]
+
+    def __len__(self) -> int:
+        """Return the number of operators of the frame."""
+        return self.n_operators
+
+    def __array__(self) -> np.ndarray:
+        """Return the array representation of the frame, with shape.
+
+        The array has a shape :math:`(``self.dimension``**2, ``self.n_operators``)`.
+        """
+        return self._array
+
+    def analysis(
+        self, hermitian_op: SparsePauliOp | Operator, frame_op_idx: int | set[int] | None = None
+    ) -> float | dict[int, float] | np.ndarray:
+        r"""Return the frame coefficients given an operator ``hermitian_op``.
+
+        Given a Hermitian operator :math:`\mathcal{O}`, one can compute its frame
+        coefficients :math:`c_k = Tr[M_k \mathcal{O}]`, where :math:`M_k` is the
+        frame operator labelled by :math:`k`. In frame theory, this operation is
+        called the 'analysis operation'.
+
+        Args:
+            hermitian_op: the Hermitian operator whose frame coefficient(s) are queried.
+            frame_op_idx: label(s) indicating which frame coefficients are queried.
+
+        Returns:
+            An array of coefficients. TODO: update.
+
+        Raises:
+            TypeError: if the label(s) ``frame_op_idx`` do not have a valid type.
+        """
+        if isinstance(hermitian_op, SparsePauliOp):
+            hermitian_op = hermitian_op.to_operator()
+        op_vectorized = np.conj(matrix_to_double_ket(hermitian_op.data))
+
+        if isinstance(frame_op_idx, int):
+            return float(np.dot(op_vectorized, self._array[:, frame_op_idx]).real)
+        if isinstance(frame_op_idx, set):
+            return {
+                idx: float(np.dot(op_vectorized, self._array[:, idx]).real) for idx in frame_op_idx
+            }
+        if frame_op_idx is None:
+            return np.array(np.dot(op_vectorized, self._array).real)
+        raise TypeError(
+            f"The optional ``frame_op_idx`` can either be a single or sequence of integers, not a {type(frame_op_idx)}."
+        )
+
+    @classmethod
+    def from_vectors(cls, frame_vectors: np.ndarray) -> Self:
+        r"""Initialize a frame from non-normalized bloch vectors :math:`|\psi \rangle`.
+
+        Args:
+            frame_vectors: list of vectors :math:`|\psi \rangle`. The length of the list corresponds to
+                the number of operators of the frame. Each vector is of shape :math:`(\mathrm{dim},)` where :math:`\mathrm{dim}`
+                is the :attr:`.dimension` of the Hilbert space on which the frame acts. The resulting frame
+                operators :math:`\Pi = |\psi \rangle \langle \psi|` are of shape :math:`(\mathrm{dim}, \mathrm{dim})` as expected.
+
+        Returns:
+            The frame corresponding to the vectors.
+        """
+        return cls([Operator(np.outer(vec, vec.conj())) for vec in frame_vectors])
diff --git a/povm_toolbox/quantum_info/multi_qubit_povm.py b/povm_toolbox/quantum_info/multi_qubit_povm.py
index 9aae354..d95e856 100644
--- a/povm_toolbox/quantum_info/multi_qubit_povm.py
+++ b/povm_toolbox/quantum_info/multi_qubit_povm.py
@@ -13,132 +13,21 @@
 from __future__ import annotations
 
 import numpy as np
-from qiskit.exceptions import QiskitError
-from qiskit.quantum_info import DensityMatrix, Operator, SparsePauliOp, SuperOp
-
-from povm_toolbox.utilities import double_ket_to_matrix, matrix_to_double_ket
+from qiskit.quantum_info import DensityMatrix, Operator, SparsePauliOp, Statevector
 
 from .base_povm import BasePOVM
+from .multi_qubit_dual import MultiQubitDUAL
+from .multi_qubit_frame import MultiQubitFrame
 
 
-class MultiQubitPOVM(BasePOVM):
+class MultiQubitPOVM(MultiQubitFrame, BasePOVM):
     """Class that collects all information that any MultiQubit POVM should specify.
 
     This is a representation of a positive operator-valued measure (POVM). The effects are
     specified as a list of :class:`~qiskit.quantum_info.Operator`.
     """
 
-    def __init__(self, povm_ops: list[Operator]) -> None:
-        r"""Initialize from explicit POVM operators.
-
-        Args:
-            povm_operators: list that contains the explicit POVM operators. Each Operator
-                in the list corresponds to a POVM effect. The length of the list is
-                the number of outcomes of the POVM.
-
-
-        Raises:
-            ValueError: if the POVM operators do not have a correct shape. They should all
-                be square and of the same dimension.
-        """
-        self._n_outcomes: int = len(povm_ops)
-        self._dimension: int = povm_ops[0].dim[0]
-        for op in povm_ops:
-            if not (self._dimension == op.dim[0] and self._dimension == op.dim[1]):
-                raise ValueError(
-                    f"POVM operators need to be square ({op.dim[0]},{op.dim[1]}) and all of the same dimension."
-                )
-        self.povm_operators: list[Operator] = povm_ops
-        self.array_ops = None
-
-        self._alphas = np.array([np.trace(povm_op.data) for povm_op in self.povm_operators])
-
-        self._informationlly_complete: bool
-        self._frame_superop: SuperOp | None = None
-        self._dual_operators: list[Operator] | None = None
-        # TODO: should all of the public attributes above become part of the BasePOVM interface?
-
-        self._check_validity()
-
-    @property
-    def dimension(self) -> int:
-        """Give the dimension of the Hilbert space on which the effects act."""
-        return self._dimension
-
-    @property
-    def n_outcomes(self) -> int:
-        """Give the number of outcomes of the POVM."""
-        return self._n_outcomes
-
-    @property
-    def alphas(self) -> np.ndarray:
-        """Parameters of the dual frame."""
-        return self._alphas
-
-    @alphas.setter
-    def alphas(self, var: np.ndarray) -> None:
-        self._alphas = var
-        self._frame_superop = None
-        self._dual_operators = None
-
-    @property
-    def frame_superop(self) -> SuperOp:
-        """Give the frame superoperator of the POVM.
-
-        CAREFUL: if the frame superoperator is not already computed, this will be computationally heavy.
-        TODO: use admonition.
-        """
-        if self._frame_superop is None:
-            mat: np.ndarray = np.zeros((self.dimension**2, self.dimension**2), dtype=complex)
-            for k, povm_op in enumerate(self.povm_operators):
-                double_ket = matrix_to_double_ket(povm_op.data)
-                mat += np.outer(double_ket, double_ket.conjugate()) / self.alphas[k]
-            self._frame_superop = SuperOp(mat)
-        return self._frame_superop
-
-    @property
-    def dual_operators(self) -> list[Operator]:
-        """Give the dual operators of the POVM.
-
-        CAREFUL: if the duals are not already computed, this will be computationally heavy.
-        """
-        if self._dual_operators is None:
-            self._dual_operators = [
-                Operator(
-                    double_ket_to_matrix(
-                        np.linalg.solve(
-                            self.frame_superop.data,
-                            matrix_to_double_ket(povm_op.data) / self.alphas[k],
-                        )
-                    )
-                )
-                for k, povm_op in enumerate(self.povm_operators)
-            ]
-        return self._dual_operators
-
-    def pauli_operators(self, dual: bool = False) -> list[dict[str, complex]]:
-        """Convert the internal POVM operators to Pauli form.
-
-        Args:
-            dual: False if the pauli decomposistion of the effects should be returned.
-                True if the pauli decomposistion of the dual operators should be returned.
-
-        Raises:
-            ValueError: when the POVM operators are not N-qubit operators.
-        """
-        if not dual:
-            try:
-                return [
-                    dict(SparsePauliOp.from_operator(op).label_iter()) for op in self.povm_operators
-                ]
-            except QiskitError as exc:
-                raise ValueError("Failed to convert POVM operators to Pauli form.") from exc
-        try:
-            return [
-                dict(SparsePauliOp.from_operator(op).label_iter()) for op in self.dual_operators
-            ]
-        except QiskitError as exc:
-            raise ValueError("Failed to convert dual operators to Pauli form.") from exc
+    default_dual_class = MultiQubitDUAL
 
     def _check_validity(self) -> None:
         r"""Check if POVM axioms are fulfilled.
@@ -150,7 +39,7 @@ class MultiQubitPOVM(BasePOVM):
         """
         summed_op: np.ndarray = np.zeros((self.dimension, self.dimension), dtype=complex)
 
-        for k, op in enumerate(self.povm_operators):
+        for k, op in enumerate(self.operators):
             if not np.allclose(op, op.adjoint(), atol=1e-5):
                 raise ValueError(f"POVM operator {k} is not hermitian.")
 
@@ -163,23 +52,10 @@ class MultiQubitPOVM(BasePOVM):
         if not np.allclose(summed_op, np.identity(self.dimension, dtype=complex), atol=1e-5):
             raise ValueError(f"POVM operators not summing up to the identity : \n{summed_op}")
 
-    def __getitem__(self, index: slice) -> Operator | list[Operator]:
-        r"""Return a povm operator or a list of povm operators.
-
-        Args:
-            index: indicate the operator(s) to be returned.
-
-        Returns:
-            The operator or list of operators corresponding to the index.
-        """
-        return self.povm_operators[index]
-
-    def __len__(self) -> int:
-        """Return the number of outcomes of the POVM."""
-        return self.n_outcomes
-
     def get_prob(
-        self, rho: DensityMatrix, outcome_idx: int | set[int] | None = None
+        self,
+        rho: SparsePauliOp | DensityMatrix | Statevector,
+        outcome_idx: int | set[int] | None = None,
     ) -> float | dict[int, float] | np.ndarray:
         r"""Return the outcome probabilities given a state ``rho``.
 
@@ -188,74 +64,11 @@ class MultiQubitPOVM(BasePOVM):
 
         Args:
             rho: the input state over which to compute the outcome probabilities.
-            outcome_idx: TODO.
+            outcome_idx: label(s) indicating which outcome probabilities are queried.
 
         Returns:
             An array of probabilities. The length of the array is given by the number of outcomes of the POVM.
-
-        Raises:
-            TypeError: TODO.
-        """
-        if isinstance(outcome_idx, int):
-            return float(np.real(np.trace(rho.data @ self.povm_operators[outcome_idx].data)))
-        if isinstance(outcome_idx, set):
-            return {
-                idx: float(np.real(np.trace(rho.data @ self.povm_operators[idx].data)))
-                for idx in outcome_idx
-            }
-        if outcome_idx is None:
-            return np.array(
-                [np.real(np.trace(rho.data @ povm_op.data)) for povm_op in self.povm_operators]
-            )
-        raise TypeError(
-            f"The optional ``outcome_idx`` can either be a single or sequence of integers, not a {type(outcome_idx)}."
-        )
-
-    def get_omegas(
-        self, obs: Operator, outcome_idx: int | set[int] | None = None
-    ) -> float | dict[int, float] | np.ndarray:
-        r"""Return the decomposition weights of observable ``obs`` into the POVM effects.
-
-        Given an obseravble :math:`O` which is in the span of the POVM, one can write the
-        observable :math:`O` as the weighted sum of the POVM effects, :math:`O = \sum_k w_k M_k`
-        for real weights :math:`w_k`. There might be infinitely many valid sets of weight.
-        This method returns a possible set of weights.
-
-        Args:
-            obs: the observable to be decomposed into the POVM effects.
-
-        Returns:
-            An array of decomposition weights.
-        """
-        if isinstance(outcome_idx, int):
-            return float(np.real(np.trace(obs.data @ self.dual_operators[outcome_idx].data)))
-        if isinstance(outcome_idx, set):
-            return {
-                idx: float(np.real(np.trace(obs.data @ self.dual_operators[idx].data)))
-                for idx in outcome_idx
-            }
-        if outcome_idx is None:
-            return np.array(
-                [np.real(np.trace(obs.data @ dual_op.data)) for dual_op in self.dual_operators]
-            )
-        raise TypeError(
-            f"The optional ``outcome_idx`` can either be a single or sequence of integers, not a {type(outcome_idx)}."
-        )
-
-    @classmethod
-    def from_vectors(cls, povm_vectors: np.ndarray) -> MultiQubitPOVM:
-        r"""Initialize a POVM from non-normalized bloch vectors :math:``|psi>``.
-
-        Args:
-            povm_vectors: list of vectors :math:``|psi>``. The length of the list corresponds to
-                the number of outcomes of the POVM. Each vector is of shape ``(dim,)`` where ``dim``
-                is the dimension of the Hilbert space on which the POVM acts. The resulting POVM
-                effects :math:``Pi = |psi><psi|`` are of shape ``(dim, dim)`` as expected.
-
-        Returns:
-            The POVM corresponding to the vectors.
         """
-        povm_operators = []
-        for vec in povm_vectors:
-            povm_operators.append(Operator(np.outer(vec, vec.conj())))
-        return cls(povm_operators)
+        if not isinstance(rho, SparsePauliOp):
+            rho = Operator(rho)
+        return self.analysis(rho, outcome_idx)
diff --git a/povm_toolbox/quantum_info/product_dual.py b/povm_toolbox/quantum_info/product_dual.py
new file mode 100644
index 0000000..af66391
--- /dev/null
+++ b/povm_toolbox/quantum_info/product_dual.py
@@ -0,0 +1,121 @@
+# (C) Copyright IBM 2024.
+#
+# This code is licensed under the Apache License, Version 2.0. You may
+# obtain a copy of this license in the LICENSE.txt file in the root directory
+# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# Any modifications or derivative works of this code must retain this
+# copyright notice, and modified files need to carry a notice indicating
+# that they have been altered from the originals.
+
+"""TODO."""
+
+from __future__ import annotations
+
+import numpy as np
+from qiskit.quantum_info import DensityMatrix, Operator, SparsePauliOp, Statevector
+
+from .base_dual import BaseDUAL
+from .base_frame import BaseFrame
+from .multi_qubit_dual import MultiQubitDUAL
+from .product_frame import ProductFrame
+
+
+class ProductDUAL(ProductFrame[MultiQubitDUAL], BaseDUAL):
+    r"""Class to represent a set of product DUAL operators.
+
+    A product DUAL :math:`D` is made of local DUAL :math:`D1, D2, ...` acting
+    on respective subsystems. Each global effect can be written as the tensor
+    product of local effects,
+    :math:`D_{k_1, k_2, ...} = D1_{k_1} \otimes D2_{k2} \otimes ...`.
+    """
+
+    def get_omegas(
+        self,
+        obs: SparsePauliOp | Operator,
+        outcome_idx: tuple[int, ...] | set[tuple[int, ...]] | None = None,
+    ) -> float | dict[tuple[int, ...], float] | np.ndarray:
+        r"""Return the decomposition weights of the provided observable into the POVM effects to which ``self`` is a dual.
+
+        Here the POVM itself is not explicitly needed, its dual is sufficient. Given
+        an observable :math:`O` which is in the span of a given POVM, one can write the
+        observable :math:`O` as the weighted sum of the POVM effects, :math:`O = \sum_k w_k M_k`
+        for real weights :math:`w_k`. There might be infinitely many valid sets of weight.
+        This method returns a possible set of weights.
+
+        Args:
+            obs: the observable to be decomposed into the POVM effects.
+
+        Returns:
+            Decomposition weight(s) associated to the effect(s) specified by ``outcome_idx``.
+            If a specific outcome was queried, a ``float`` is returned. If a specific set of outcomes was
+            queried, a dictionary mapping outcome labels to weights is returned. If all outcomes were
+            queried, a high-dimensional array with one dimension per local POVM stored inside this
+            :class:`.ProductPOVM` instance is returned. The length of each dimension is given by
+            the number of outcomes of the POVM encoded along that axis.
+        """
+        # TODO: check that obs is Hermitian ?
+        return self.analysis(obs, outcome_idx)
+
+    def is_dual_to(self, frame: BaseFrame) -> bool:
+        """Check if ``self`` is a dual to another frame."""
+        if isinstance(frame, ProductFrame) and set(self.sub_systems) == set(frame.sub_systems):
+            return all([self[idx].is_dual_to(frame[idx]) for idx in self.sub_systems])
+        # TODO: maybe differentiate two distinct cases:
+        #   1) the subsystems are not the same, e.g. ``self`` acts on (0,) and (1,) but ``frame`` acts
+        #      on (0,) and (2,). Then we should raise an ValueError
+        #   2) the subsystems are the same but differently allocated, e.g. ``self`` acts on (0,) and
+        #      (1,2) but ``frame`` on (0,1) and (2,). ``self`` could still be a valid dual frame but we
+        #      have not implemented the check for this. Then we should raise an NotImplementedError.
+        raise NotImplementedError
+
+    def optimize(self, frame: BaseFrame, **options) -> None:
+        """Optimize the dual to `frame` inplace.
+
+        Args:
+            frame: The primal frame to which ``self`` is a dual.
+            options: keyword arguments specifying how to optimize ``self``.
+        """
+        state = options.get("state", None)
+        if not isinstance(frame, ProductFrame):
+            raise NotImplementedError
+        if state is not None:
+            axes = np.arange(len(frame.sub_systems), dtype=int)
+            if isinstance(state, (Statevector, DensityMatrix)):
+                state = Operator(state)
+            elif not isinstance(state, Operator):
+                raise TypeError
+            joint_prob: np.ndarray = frame.analysis(state)  # type: ignore
+            for i, sub_system in enumerate(frame.sub_systems):
+                marg_prob = joint_prob.sum(axis=tuple(np.delete(axes, [i])))
+                if not all(marg_prob):
+                    marg_prob += 1e-3
+                self[sub_system].optimize(frame=frame[sub_system], alphas=tuple(marg_prob))
+
+    @classmethod
+    def build_dual_from_frame(
+        cls, frame: BaseFrame, alphas: tuple[tuple[float, ...] | None, ...] | None = None
+    ) -> ProductDUAL:
+        """Construct a dual frame to another frame.
+
+        Args:
+            frame: The primal frame from which we will build the dual frame.
+
+        Returns:
+            A product dual frame to the supplied ``frame``.
+        """
+        dual_operators = {}
+        if isinstance(frame, ProductFrame):
+            if alphas is None:
+                alphas = len(frame.sub_systems) * (None,)
+            elif len(alphas) != len(frame.sub_systems):
+                raise ValueError(
+                    f"The number of sets of alpha-parameters ({len(alphas)}) does not match"
+                    f" the number of sub-systems ({len(frame.sub_systems)})."
+                )
+            for sub_system, sub_alphas in zip(frame.sub_systems, alphas):
+                dual_operators[sub_system] = MultiQubitDUAL.build_dual_from_frame(
+                    frame[sub_system], sub_alphas
+                )
+            return cls(dual_operators)
+        raise NotImplementedError
diff --git a/povm_toolbox/quantum_info/product_frame.py b/povm_toolbox/quantum_info/product_frame.py
new file mode 100644
index 0000000..7d55bb8
--- /dev/null
+++ b/povm_toolbox/quantum_info/product_frame.py
@@ -0,0 +1,317 @@
+# (C) Copyright IBM 2024.
+#
+# This code is licensed under the Apache License, Version 2.0. You may
+# obtain a copy of this license in the LICENSE.txt file in the root directory
+# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# Any modifications or derivative works of this code must retain this
+# copyright notice, and modified files need to carry a notice indicating
+# that they have been altered from the originals.
+
+"""TODO."""
+
+from __future__ import annotations
+
+import sys
+import warnings
+from collections.abc import Sequence
+from typing import Generic, TypeVar
+
+if sys.version_info < (3, 11):
+    from typing_extensions import Self
+else:
+    from typing import Self
+
+
+import numpy as np
+from qiskit.quantum_info import Operator, SparsePauliOp
+
+from .base_frame import BaseFrame
+from .multi_qubit_frame import MultiQubitFrame
+
+T = TypeVar("T", bound=MultiQubitFrame)
+
+
+class ProductFrame(BaseFrame[tuple[int, ...]], Generic[T]):
+    r"""Class to represent a set of product frame operators.
+
+    A product frame :math:`M` is made of local frames :math:`M1, M2, ...` acting
+    on respective subsystems. Each global effect can be written as the tensor
+    product of local operators,
+    :math:`M_{k_1, k_2, ...} = M1_{k_1} \otimes M2_{k2} \otimes ...`.
+    """
+
+    def __init__(self, povms: dict[tuple[int, ...], T]):
+        """Initialize a :class:`.ProductFrame` instance.
+
+        Args:
+            povms: a dictionary mapping from a tuple of subsystem indices to a :class:`.MultiQubitFrame`
+                object.
+
+        Raises:
+            ValueError: if any key in ``povms`` is not a tuple consisting of unique integers. In
+                other words, every POVM must act on a distinct set of subsystem indices which do not
+                overlap with each other.
+            ValueError: if any key in ``povms`` re-uses a previously used subsystem index. In other
+                words, all POVMs must act on mutually exclusive subsystem indices.
+            ValueError: if any key in ``povms`` does not specify the number of subsystem indices,
+                which matches the number of systems acted upon by that POVM
+                (:meth:`MultiQubitFrame.n_subsystems`).
+        """
+        subsystem_indices = set()
+        self._dimension = 1
+        self._n_operators = 1
+        shape: list[int] = []
+        for idx, povm in povms.items():
+            idx_set = set(idx)
+            if len(idx) != len(idx_set):
+                raise ValueError(
+                    "The subsystem indices acted upon by any POVM must be mutually exclusive. "
+                    f"The index '{idx}' does not fulfill this criterion."
+                )
+            if any(i in subsystem_indices for i in idx):
+                raise ValueError(
+                    "The subsystem indices acted upon by all the POVMs must be mutually exclusive. "
+                    f"However, one of the indices in '{idx}' was already encountered before."
+                )
+            if len(idx_set) != povm.n_subsystems:
+                raise ValueError(
+                    "The number of subsystem indices for a POVM must match the number of subsystems"
+                    " which it acts upon. This is not satisfied for the POVM specified to act on "
+                    f"subsystems '{idx}' but having support on '{povm.n_subsystems}' subsystems."
+                )
+            subsystem_indices.update(idx_set)
+            self._dimension *= povm.dimension
+            self._n_operators *= povm.n_operators
+            shape.append(povm.n_operators)
+
+        self._informationally_complete: bool = all(
+            [povm.informationally_complete for povm in povms.values()]
+        )
+
+        self._povms = povms
+        self._shape: tuple[int, ...] = tuple(shape)
+
+        self._check_validity()
+
+    @classmethod
+    def from_list(cls, povms: Sequence[T]) -> Self:
+        """Construct a :class:`.ProductFrame` from a list of :class:`.MultiQubitFrame` objects.
+
+        This is a convenience method to simplify the construction of a :class:`.ProductPOVM` for the cases
+        in which the POVM objects act on a sequential order of subsystems. In other words, this
+        method converts the sequence of POVMs to a dictionary of POVMs in accordance with the input
+        to :meth:`.ProductFrame.__init__` by using the positions along the sequence as subsystem
+        indices.
+
+        Below are some examples:
+
+        .. code-block:: python
+
+            sqp = SingleQubitPOVM([Operator.from_label("0"), Operator.from_label("1")])
+            product = ProductPOVM.from_list([sqp, sqp])
+            # is equivalent to
+            product = ProductPOVM({(0,): sqp, (1,): sqp})
+
+            mqp = MultiQubitFrame(
+                [
+                    Operator.from_label("00"),
+                    Operator.from_label("01"),
+                    Operator.from_label("10"),
+                    Operator.from_label("11"),
+                ]
+            )
+            product = ProductPOVM.from_list([mqp, mqp])
+            # is equivalent to
+            product = ProductPOVM({(0, 1): mqp, (2, 3): mqp})
+
+            product = ProductPOVM.from_list([sqp, sqp, mqp])
+            # is equivalent to
+            product = ProductPOVM({(0,): sqp, (1,): sqp, (2, 3): mqp})
+
+            product = ProductPOVM.from_list([sqp, mqp, sqp])
+            # is equivalent to
+            product = ProductPOVM({(0,): sqp, (1, 2): mqp, (3,): sqp})
+
+        Args:
+            povms: a sequence of :class:`.MultiQubitFrame` objects.
+
+        Returns:
+            A new :class:`.ProductPOVM` instance.
+        """
+        povm_dict = {}
+        idx = 0
+        for povm in povms:
+            prev_idx = idx
+            idx += povm.n_subsystems
+            povm_dict[tuple(range(prev_idx, idx))] = povm
+        return cls(povm_dict)
+
+    @property
+    def informationally_complete(self) -> bool:
+        """Return if the frame spans the entire Hilbert space."""
+        return self._informationally_complete
+
+    @property
+    def dimension(self) -> int:
+        """Give the dimension of the Hilbert space on which the effects act."""
+        return self._dimension
+
+    @property
+    def n_operators(self) -> int:
+        """Give the number of single-qubit operators forming the POVM."""
+        return self._n_operators
+
+    @property
+    def shape(self) -> tuple[int, ...]:
+        """Give the number of operators per sub-system."""
+        return self._shape
+
+    @property
+    def sub_systems(self) -> list[tuple[int, ...]]:
+        """Give the number of operators per sub-system."""
+        return list(self._povms.keys())
+
+    def _check_validity(self) -> None:
+        """Check if POVM axioms are fulfilled.
+
+        Raises:
+            TODO.
+        """
+        for povm in self._povms.values():
+            povm._check_validity()
+
+    def __getitem__(self, sub_system: tuple[int, ...]) -> T:
+        r"""Return the :class:`.MultiQubitFrame` acting on the specified sub-system.
+
+        Args:
+            sub_system: indicate the sub-system on which the queried frame acts on.
+
+        Returns:
+            The :class:`.MultiQubitFrame` acting on the specified sub-system.
+        """
+        return self._povms[sub_system]
+
+    def __len__(self) -> int:
+        """Return the number of outcomes of the POVM."""
+        return self.n_operators
+
+    def _trace_of_prod(self, operator: SparsePauliOp, frame_op_idx: tuple[int, ...]) -> float:
+        """Return the trace of the product of a Hermitian operator with a specific frame operator.
+
+        Args:
+            operator: the input operator to multiply with a frame operator.
+            frame_op_idx: the label specifying the frame operator to use. The frame operator is labeled
+                by a tuple of integers (one index per local frame).
+
+        Returns:
+            The trace of the product of the input operator with the specified frame operator.
+
+        Raises:
+            IndexError: when the provided outcome label (tuple of integers) has a number of integers
+                which does not correspond to the number of local frames making up the product frame.
+            IndexError: when a local index exceed the number of operators of the corresponding local frame.
+            ValueError: when the output is not a real number.
+        """
+        p_idx = 0.0 + 0.0j
+
+        # Second, we iterate over our input operator, ``operator``.
+        for label, op_coeff in operator.label_iter():
+            summand = op_coeff
+            # Third, we iterate over the POVMs stored inside the ProductPOVM.
+            #   - ``j`` is the index of the POVM inside the ``ProductPOVM``. This encodes the axis
+            #     of the high-dimensional array ``p_init`` along which this local POVM is encoded.
+            #   - ``idx`` are the qubit indices on which this local POVM acts.
+            #   - ``povm`` is the actual local POVM object.
+            for j, (idx, povm) in enumerate(self._povms.items()):
+                # Extract the local Pauli term on the qubit indices of this local POVM.
+                sublabel = "".join(label[-(i + 1)] for i in idx)
+                # Try to obtain the coefficient of the local POVM for this local Pauli term.
+                try:
+                    coeff = povm.pauli_operators[frame_op_idx[j]][sublabel]
+                except KeyError:
+                    # If it does not exist, the current summand becomes 0 because it would be
+                    # multiplied by 0.
+                    summand = 0.0
+                    # In this case we can break the iteration over the remaining local POVMs.
+                    break
+                except IndexError as exc:
+                    if len(frame_op_idx) <= j:
+                        raise IndexError(
+                            f"The outcome label {frame_op_idx} does not match the expected shape. It is"
+                            f" supposed to contain {len(self._povms)} integers, but has {len(frame_op_idx)}."
+                        ) from exc
+                    if povm.n_operators <= frame_op_idx[j]:
+                        raise IndexError(
+                            f"Outcome index '{frame_op_idx[j]}' is out of range for the local POVM"
+                            f" acting on subsystems {idx}. This POVM has {povm.n_operators} outcomes."
+                        ) from exc
+                    raise exc
+                else:
+                    # If the label does exist, we multiply the coefficient into our summand.
+                    # The factor 2*N_qubit comes from Tr[(P_1...P_N)^2] = 2*N.
+                    summand *= coeff * 2 * povm.n_subsystems
+
+            # Once we have finished computing our summand, we add it into ``p_init``.
+            p_idx += summand
+        if abs(p_idx.imag) > operator.atol:
+            warnings.warn(f"Expected a real number, instead got {p_idx}.", stacklevel=2)
+        return float(p_idx.real)
+
+    def analysis(
+        self,
+        hermitian_op: SparsePauliOp | Operator,
+        frame_op_idx: tuple[int, ...] | set[tuple[int, ...]] | None = None,
+    ) -> float | dict[tuple[int, ...], float] | np.ndarray:
+        """TODO.
+
+        Args:
+            hermitian_op: TODO.
+            frame_op_idx: the outcomes for which one queries the trace. Each outcome is labeled
+                by a tuple of integers (one index per local POVM). One can query a single outcome or a
+                set of outcomes. If ``None``, all outcomes are queried.
+
+        Returns:
+            Frame coefficients, specified by ``frame_op_idx``, with respect to the Hermitian operator
+            ``hermitian_op``. If a specific coefficient was queried, a ``float`` is returned. If a
+            specific set of coefficients was queried, a dictionary mapping labels to coefficients
+            is returned. If all coefficients were queried, a high-dimensional array with one dimension
+            per local frame stored inside ``self`` is returned. The length of each dimension is given
+            by the number of operators of the frame encoded along that axis.
+
+        Raises:
+            TypeError: when the provided single or sequence of labels ``frame_op_idx`` does not have
+                a valid type.
+            ValueError: when the provided ``operator`` does not act on the same number of qubits as
+                ``self``.
+        """
+        if not isinstance(hermitian_op, SparsePauliOp):
+            # Convert the provided operator to a Pauli operator.
+            hermitian_op = SparsePauliOp.from_operator(hermitian_op)
+
+        # Assert matching operator and POVM sizes.
+        if hermitian_op.num_qubits != self.n_subsystems:
+            raise ValueError(
+                f"Size of the operator {hermitian_op.n_qubits} does not match the size of the povm {len(self)}."
+            )
+
+        # If frame_op_idx is ``None``, it means all outcomes are queried
+        if frame_op_idx is None:
+            # Extract the number of outcomes for each local POVM.
+
+            # Create the output probability array as a high-dimensional matrix. This matrix will have
+            # its number of dimensions equal to the number of POVMs stored inside the ProductPOVM. The
+            # length of each dimension is given by the number of outcomes of the POVM encoded along it.
+            p_init: np.ndarray = np.zeros(self.shape, dtype=float)
+
+            # First, we iterate over all the positions of ``p_init``. This corresponds to the different
+            # probabilities for the different outcomes whose probability we want to compute.
+            #   - ``m`` is the multi-dimensional index into the high-dimensional ``p_init`` array.
+            for m, _ in np.ndenumerate(p_init):
+                p_init[m] = self._trace_of_prod(hermitian_op, m)
+            return p_init
+        if isinstance(frame_op_idx, set):
+            return {idx: self._trace_of_prod(hermitian_op, idx) for idx in frame_op_idx}
+        if isinstance(frame_op_idx, tuple):
+            return self._trace_of_prod(hermitian_op, frame_op_idx)
+        raise TypeError("wrong shape of frame_op_idx")
diff --git a/povm_toolbox/quantum_info/product_povm.py b/povm_toolbox/quantum_info/product_povm.py
index 17d9af6..39c3e1a 100644
--- a/povm_toolbox/quantum_info/product_povm.py
+++ b/povm_toolbox/quantum_info/product_povm.py
@@ -12,17 +12,16 @@
 
 from __future__ import annotations
 
-import warnings
-from collections.abc import Sequence
-
 import numpy as np
-from qiskit.quantum_info import DensityMatrix, Operator, SparsePauliOp
+from qiskit.quantum_info import DensityMatrix, SparsePauliOp, Statevector
 
 from .base_povm import BasePOVM
 from .multi_qubit_povm import MultiQubitPOVM
+from .product_dual import ProductDUAL
+from .product_frame import ProductFrame
 
 
-class ProductPOVM(BasePOVM):
+class ProductPOVM(ProductFrame[MultiQubitPOVM], BasePOVM):
     r"""Class to represent a set of product POVM operators.
 
     A product POVM :math:`M` is made of local POVMs :math:`M1, M2, ...` acting
@@ -31,134 +30,7 @@ class ProductPOVM(BasePOVM):
     :math:`M_{k_1, k_2, ...} = M1_{k_1} \otimes M2_{k2} \otimes ...`.
     """
 
-    def __init__(self, povms: dict[tuple[int, ...], MultiQubitPOVM]):
-        """Initialize a ``ProductPOVM`` instance.
-
-        Args:
-            povms: a dictionary mapping from a tuple of subsystem indices to a ``MultiQubitPOVM``
-                object.
-
-        Raises:
-            ValueError: if any key in ``povms`` is not a tuple consisting of unique integers. In
-                other words, every POVM must act on a distinct set of subsystem indices which do not
-                overlap with each other.
-            ValueError: if any key in ``povms`` re-uses a previously used subsystem index. In other
-                words, all POVMs must act on mutually exclusive subsystem indices.
-            ValueError: if any key in ``povms`` does not specify the number of subsystem indices,
-                which matches the number of systems acted upon by that POVM
-                (:meth:`MultiQubitPOVM.n_subsystems`).
-        """
-        subsystem_indices = set()
-        self._dimension = 1
-        self._n_outcomes = 1
-        self._n_operators = 0
-        for idx, povm in povms.items():
-            idx_set = set(idx)
-            if len(idx) != len(idx_set):
-                raise ValueError(
-                    "The subsystem indices acted upon by any POVM must be mutually exclusive. "
-                    f"The index '{idx}' does not fulfill this criterion."
-                )
-            if any(i in subsystem_indices for i in idx):
-                raise ValueError(
-                    "The subsystem indices acted upon by all the POVMs must be mutually exclusive. "
-                    f"However, one of the indices in '{idx}' was already encountered before."
-                )
-            if len(idx_set) != povm.n_subsystems:
-                raise ValueError(
-                    "The number of subsystem indices for a POVM must match the number of subsystems"
-                    " which it acts upon. This is not satisfied for the POVM specified to act on "
-                    f"subsystems '{idx}' but having support on '{povm.n_subsystems}' subsystems."
-                )
-            subsystem_indices.update(idx_set)
-            self._dimension *= povm.dimension
-            self._n_outcomes *= povm.n_outcomes
-            self._n_operators += povm.n_outcomes
-
-        self._povms = povms
-
-        self._check_validity()
-
-    @classmethod
-    def from_list(cls, povms: Sequence[MultiQubitPOVM]) -> ProductPOVM:
-        """Construct a ``ProductPOVM`` from a list of ``MultiQubitPOVM`` objects.
-
-        This is a convenience method to simplify the construction of a ``ProductPOVM`` for the cases
-        in which the POVM objects act on a sequential order of subsystems. In other words, this
-        method converts the sequence of POVMs to a dictionary of POVMs in accordance with the input
-        to :meth:`ProcutPOVM.__init__` by using the positions along the sequence as subsystem
-        indices.
-
-        Below are some examples:
-
-        .. code-block:: python
-
-            sqp = SingleQubitPOVM([Operator.from_label("0"), Operator.from_label("1")])
-            product = ProcuctPOVM.from_list([sqp, sqp])
-            # is equivalent to
-            product = ProductPOVM({(0,): sqp, (1,): sqp})
-
-            mqp = MultiQubitPOVM(
-                [
-                    Operator.from_label("00"),
-                    Operator.from_label("01"),
-                    Operator.from_label("10"),
-                    Operator.from_label("11"),
-                ]
-            )
-            product = ProductPOVM.from_list([mqp, mqp])
-            # is equivalent to
-            product = ProductPOVM({(0, 1): mqp, (2, 3): mqp})
-
-            product = ProductPOVM.from_list([sqp, sqp, mqp])
-            # is equivalent to
-            product = ProductPOVM({(0,): sqp, (1,): sqp, (2, 3): mqp})
-
-            product = ProductPOVM.from_list([sqp, mqp, sqp])
-            # is equivalent to
-            product = ProductPOVM({(0,): sqp, (1, 2): mqp, (3,): sqp})
-
-        Args:
-            povms: a sequence of ``MultiQubitPOVM`` objects.
-
-        Returns:
-            A new ``ProductPOVM`` instance.
-        """
-        povm_dict = {}
-        idx = 0
-        for povm in povms:
-            prev_idx = idx
-            idx += povm.n_subsystems
-            povm_dict[tuple(range(prev_idx, idx))] = povm
-        return cls(povm_dict)
-
-    @property
-    def dimension(self) -> int:
-        """Give the dimension of the Hilbert space on which the effects act."""
-        return self._dimension
-
-    @property
-    def n_outcomes(self) -> int:
-        """Give the number of outcomes of the POVM."""
-        # TODO: check behaviour when a MultiQubitPOVM in the list is cleaned
-        return self._n_outcomes
-
-    @property
-    def n_operators(self) -> int:
-        """Give the number of single-qubit operators forming the POVM."""
-        return self._n_operators
-
-    @property
-    def alphas(self) -> list[np.ndarray]:
-        """Parameters of the dual frames of each local POVM."""
-        return [povm._alphas for povm in self._povms.values()]
-
-    @alphas.setter
-    def alphas(self, var: list[np.ndarray]) -> None:
-        for i, povm in enumerate(self._povms.values()):
-            povm._alphas = var[i]
-            povm._frame_superop = None
-            povm._dual_operators = None
+    default_dual_class = ProductDUAL
 
     def _check_validity(self) -> None:
         """Check if POVM axioms are fulfilled.
@@ -167,141 +39,13 @@ class ProductPOVM(BasePOVM):
             TODO.
         """
         for povm in self._povms.values():
+            if not isinstance(povm, MultiQubitPOVM):
+                raise TypeError
             povm._check_validity()
 
-    def __len__(self) -> int:
-        """Return the number of outcomes of the POVM."""
-        return self.n_outcomes
-
-    def _trace_of_prod(
-        self, operator: SparsePauliOp, outcome_idx: tuple[int, ...], dual: bool = False
-    ) -> float:
-        """Return the trace of the product of an operator with a specific effect (or its dual operator).
-
-        Args:
-            operator: the input operator to multiply with an effect or dual operator.
-            outcome_idx: the label specifying the effect (or its dual) to use. The outcome is labeled
-                by a tuple of integers (one index per local POVM).
-            dual: False if the the POVM effects should be used. True if the corresponding dual operator
-                should be used instead.
-
-        Returns:
-            The trace of the product of the input operator with the specified effect (or its dual).
-
-        Raises:
-            IndexError: when the provided outcome label (tuple of integers) has a number of integers
-                which does not correspond to the number of local POVMs making up the product POVM.
-            IndexError: when a local index exceed the number of outcomes of the corresponding local POVM.
-            ValueError: when the probability is not a real number.
-        """
-        p_idx = 0.0 + 0.0j
-
-        # Second, we iterate over our input operator, `operator`.
-        for label, op_coeff in operator.label_iter():
-            summand = op_coeff
-            # Third, we iterate over the POVMs stored inside the ProductPOVM.
-            #   - `j` is the index of the POVM inside the `ProductPOVM`. This encodes the axis
-            #     of the high-dimensional array `p_init` along which this local POVM is encoded.
-            #   - `idx` are the qubit indices on which this local POVM acts.
-            #   - `povm` is the actual local POVM object.
-            for j, (idx, povm) in enumerate(self._povms.items()):
-                # Extract the local Pauli term on the qubit indices of this local POVM.
-                sublabel = "".join(label[-(i + 1)] for i in idx)
-                # Try to obtain the coefficient of the local POVM for this local Pauli term.
-                try:
-                    coeff = povm.pauli_operators(dual)[outcome_idx[j]][sublabel]
-                except KeyError:
-                    # If it does not exist, the current summand becomes 0 because it would be
-                    # multiplied by 0.
-                    summand = 0.0
-                    # In this case we can break the iteration over the remaining local POVMs.
-                    break
-                except IndexError as exc:
-                    if len(outcome_idx) <= j:
-                        raise IndexError(
-                            f"The outcome label {outcome_idx} does not match the expected shape. It is"
-                            f" supposed to contain {len(self._povms)} integers, but has {len(outcome_idx)}."
-                        ) from exc
-                    if povm.n_outcomes <= outcome_idx[j]:
-                        raise IndexError(
-                            f"Outcome index '{outcome_idx[j]}' is out of range for the local POVM"
-                            f" acting on subsystems {idx}. This POVM has {povm.n_outcomes} outcomes."
-                        ) from exc
-                    raise exc
-                else:
-                    # If the label does exist, we multiply the coefficient into our summand.
-                    # The factor 2*N_qubit comes from Tr[(P_1...P_N)^2] = 2*N.
-                    summand *= coeff * 2 * povm.n_subsystems
-
-            # Once we have finished computing our summand, we add it into `p_init`.
-            p_idx += summand
-        if abs(p_idx.imag) > operator.atol:
-            warnings.warn(f"Expected a real number, instead got {p_idx}.", stacklevel=2)
-        return float(p_idx.real)
-
-    def _decompose_op(
-        self,
-        operator: DensityMatrix,
-        outcome_idx: tuple[int, ...] | set[tuple[int, ...]] | None = None,
-        dual: bool = False,
-    ) -> float | dict[tuple[int, ...], float] | np.ndarray:
-        """TODO.
-
-        Args:
-            operator: TODO.
-            outcome_idx: the outcomes for which one queries the trace. Each outcome is labeled
-                by a tuple of integers (one index per local POVM). One can query a single outcome or a
-                set of outcomes. If ``None``, all outcomes are queried.
-            dual: False if the pauli decomposistion of the effects should be returned.
-                True if the pauli decomposistion of the dual operators should be returned.
-
-        Returns:
-            TODO: update return type.
-            An array of probabilities. If a specific set of outcomes was queried, the length of the array
-            is equal to the number of outcomes queried. If all outcomes were queried, its shape is a
-            high-dimensional array with one dimension per local POVM stored inside this ``ProductPOVM``.
-            The length of each dimension is given by the number of outcomes of the POVM encoded along that axis.
-
-        Raises:
-            TypeError: when the provided single or sequence of outcomes indices ``outcome_idx`` does not have
-                a valid type.
-            ValueError: when the provided state ``operator`` does not act on the same number of qubits as
-                this ``ProductPOVM``.
-        """
-        # Convert the provided state to a Pauli operator.
-        operator = SparsePauliOp.from_operator(operator)
-
-        # Assert matching operator and POVM sizes.
-        if operator.num_qubits != self.n_subsystems:
-            raise ValueError(
-                f"Size of the operator {operator.n_qubits} does not match the size of the povm {len(self)}."
-            )
-
-        # If outcome_idx is `None`, it means all outcomes are queried
-        if outcome_idx is None:
-            # Extract the number of outcomes for each local POVM.
-            n_outcomes = [povm.n_outcomes for povm in self._povms.values()]
-
-            # Create the output probability array as a high-dimensional matrix. This matrix will have
-            # its number of dimensions equal to the number of POVMs stored inside the ProductPOVM. The
-            # length of each dimension is given by the number of outcomes of the POVM encoded along it.
-            p_init: np.ndarray = np.zeros(n_outcomes, dtype=float)
-
-            # First, we iterate over all the positions of `p_init`. This corresponds to the different
-            # probabilities for the different outcomes whose probability we want to compute.
-            #   - `m` is the multi-dimensional index into the high-dimensional `p_init` array.
-            for m, _ in np.ndenumerate(p_init):
-                p_init[m] = self._trace_of_prod(operator, m, dual)
-            return p_init
-        if isinstance(outcome_idx, set):
-            return {idx: self._trace_of_prod(operator, idx, dual) for idx in outcome_idx}
-        if isinstance(outcome_idx, tuple):
-            return self._trace_of_prod(operator, outcome_idx, dual)
-        raise TypeError("wrong shape of outcome_idx")
-
     def get_prob(
         self,
-        rho: DensityMatrix,
+        rho: SparsePauliOp | DensityMatrix | Statevector,
         outcome_idx: tuple[int, ...] | set[tuple[int, ...]] | None = None,
     ) -> float | dict[tuple[int, ...], float] | np.ndarray:
         """Return the outcome probabilities given a state rho.
@@ -317,33 +61,9 @@ class ProductPOVM(BasePOVM):
             If a specific outcome was queried, a ``float`` is returned. If a specific set of outcomes was
             queried, a dictionary mapping outcomes to probabilities is returned. If all outcomes were
             queried, a high-dimensional array with one dimension per local POVM stored inside this
-            ``ProductPOVM`` is returned. The length of each dimension is given by the number of outcomes
-            of the POVM encoded along that axis.
-        """
-        return self._decompose_op(operator=Operator(rho), outcome_idx=outcome_idx, dual=False)
-
-    def get_omegas(
-        self,
-        obs: Operator,
-        outcome_idx: tuple[int, ...] | set[tuple[int, ...]] | None = None,
-    ) -> float | dict[tuple[int, ...], float] | np.ndarray:
-        r"""Return the decomposition weights of observable ``obs`` into the POVM effects.
-
-        Given an obseravble :math:`O` which is in the span of the POVM, one can write the
-        observable :math:`O` as the weighted sum of the POVM effects, :math:`O = \sum_k w_k M_k`
-        for real weights :math:`w_k`. There might be infinitely many valid sets of weight.
-        This method returns a possible set of weights.
-
-        Args:
-            obs: the observable to be decomposed into the POVM effects.
-
-        Returns:
-            Decomposition weight(s) associated to the effct(s) specified by ``outcome_idx``.
-            If a specific outcome was queried, a ``float`` is returned. If a specific set of outcomes was
-            queried, a dictionary mapping outcome labels to weights is returned. If all outcomes were
-            queried, a high-dimensional array with one dimension per local POVM stored inside this
-            ``ProductPOVM`` is returned. The length of each dimension is given by the number of outcomes
+            :class:`.`ProductPOVM` is returned. The length of each dimension is given by the number of outcomes
             of the POVM encoded along that axis.
         """
-        # TODO: check that obs is Hermitian ?
-        return self._decompose_op(operator=obs, outcome_idx=outcome_idx, dual=True)
+        if not isinstance(rho, SparsePauliOp):
+            rho = SparsePauliOp.from_operator(rho)
+        return self.analysis(rho, outcome_idx)
diff --git a/povm_toolbox/sampler/povm_sampler_pub.py b/povm_toolbox/sampler/povm_sampler_pub.py
index c04424f..afbbfc3 100644
--- a/povm_toolbox/sampler/povm_sampler_pub.py
+++ b/povm_toolbox/sampler/povm_sampler_pub.py
@@ -115,7 +115,7 @@ class POVMSamplerPub(ShapedMixin):
                 and that no default number of shots is set or if the pub-like
                 object does not specify a povm and that no default povm is set.
             ValueError: If a tuple is supplied but its length exceed 4.
-            NotImplementedError: If parameter values to be bound to a paremetric
+            NotImplementedError: If parameter values to be bound to a parametric
                 circuit is passed as an argument in the pub-like object.
             TypeError: If the pub-like object does not have a valid type.
 


Test patch:
diff --git a/test/library/test_classical_shadows.py b/test/library/test_classical_shadows.py
index 896d3aa..39aaa91 100644
--- a/test/library/test_classical_shadows.py
+++ b/test/library/test_classical_shadows.py
@@ -18,7 +18,7 @@ from povm_toolbox.quantum_info.single_qubit_povm import SingleQubitPOVM
 from qiskit.quantum_info import Operator
 
 
-class TestClassicalShadowsd(TestCase):
+class TestClassicalShadows(TestCase):
     def __init__(self, methodName: str = "runTest") -> None:
         super().__init__(methodName)
 
diff --git a/test/post_processor/test_post_processor.py b/test/post_processor/test_post_processor.py
new file mode 100644
index 0000000..5c248fe
--- /dev/null
+++ b/test/post_processor/test_post_processor.py
@@ -0,0 +1,50 @@
+# (C) Copyright IBM 2024.
+#
+# This code is licensed under the Apache License, Version 2.0. You may
+# obtain a copy of this license in the LICENSE.txt file in the root directory
+# of this source tree or at http://www.apache.org/licenses/LICENSE-2.0.
+#
+# Any modifications or derivative works of this code must retain this
+# copyright notice, and modified files need to carry a notice indicating
+# that they have been altered from the originals.
+
+"""Tests for the MultiQubitPOVM class."""
+
+from unittest import TestCase
+
+from povm_toolbox.post_processor import POVMPostProcessor
+
+
+class TestPostProcessor(TestCase):
+    """TODO."""
+
+    def test_init(self):
+        """TODO."""
+
+        from qiskit import QuantumCircuit
+
+        qc = QuantumCircuit(2)
+        qc.h(0)
+        qc.cx(0, 1)
+
+        from povm_toolbox.sampler import POVMSampler
+        from qiskit.primitives import StatevectorSampler as Sampler
+
+        sampler = Sampler()
+        povm_sampler = POVMSampler(sampler=sampler)
+
+        from povm_toolbox.library import ClassicalShadows
+
+        measurement = ClassicalShadows(n_qubit=2)
+
+        job = povm_sampler.run([qc], shots=256, povm=measurement)
+        result = job.result()
+        pub_result = result[0]
+
+        from qiskit.quantum_info import SparsePauliOp
+
+        observable = SparsePauliOp(["II", "XX", "YY", "ZZ"], coeffs=[1, 1, -1, 1])
+
+        post_processor = POVMPostProcessor(pub_result)
+
+        self.assertIsInstance(post_processor.get_expectation_value(observable), float)
diff --git a/test/quantum_info/test_multi_qubit_povm.py b/test/quantum_info/test_multi_qubit_povm.py
index d3dda59..815ee83 100644
--- a/test/quantum_info/test_multi_qubit_povm.py
+++ b/test/quantum_info/test_multi_qubit_povm.py
@@ -13,6 +13,7 @@
 from unittest import TestCase
 
 import numpy as np
+from povm_toolbox.quantum_info.multi_qubit_dual import MultiQubitDUAL
 from povm_toolbox.quantum_info.multi_qubit_povm import MultiQubitPOVM
 from qiskit.quantum_info import Operator, random_hermitian
 
@@ -21,7 +22,7 @@ class TestMultiQubitPOVM(TestCase):
     """Test that we can create valid POVM and get warnings if invalid."""
 
     def test_random_operators(self):
-        """Test that an error is raised if the oprators are not Hermitian."""
+        """Test that an error is raised if the operators are not Hermitian."""
 
         ops = np.random.uniform(-1, 1, (6, 2, 2)) + 1.0j * np.random.uniform(-1, 1, (6, 2, 2))
 
@@ -29,16 +30,16 @@ class TestMultiQubitPOVM(TestCase):
             ops = np.random.uniform(-1, 1, (6, 2, 2)) + 1.0j * np.random.uniform(-1, 1, (6, 2, 2))
 
         with self.assertRaises(ValueError):
-            povm1 = MultiQubitPOVM(povm_ops=[Operator(op) for op in ops])
+            povm1 = MultiQubitPOVM(list_operators=[Operator(op) for op in ops])
             print(povm1[0])
 
     def test_dimension(self):
         """Test dimension attribute"""
-        for dim in range(10):
+        for dim in range(1, 10):
             povm = MultiQubitPOVM(3 * [Operator(1.0 / 3.0 * np.eye(dim))])
             self.assertEqual(dim, povm.dimension)
             self.assertEqual(dim, povm._dimension)
-            self.assertEqual((dim, dim), povm.povm_operators[1].dim)
+            self.assertEqual((dim, dim), povm.operators[1].dim)
 
     def test_n_outcomes(self):
         """Test the number of outcomes, with both `n_outcome` attribute and `__len__` method."""
@@ -46,9 +47,8 @@ class TestMultiQubitPOVM(TestCase):
             for dim in range(1, 10):
                 povm = MultiQubitPOVM(n * [Operator(1.0 / n * np.eye(dim))])
                 self.assertEqual(n, povm.n_outcomes)
-                self.assertEqual(n, povm._n_outcomes)
                 self.assertEqual(n, len(povm))
-                self.assertEqual(n, len(povm.povm_operators))
+                self.assertEqual(n, len(povm.operators))
 
     def test_getitem(self):
         """Test the `__getitem__` method."""
@@ -59,16 +59,10 @@ class TestMultiQubitPOVM(TestCase):
         self.assertIsInstance(povm[2], Operator)
         self.assertIsInstance(povm[1:2], list)
         self.assertIsInstance(povm[:2], list)
-        self.assertEqual(povm[0], povm.povm_operators[0])
-        self.assertListEqual(
-            povm[3:], [povm.povm_operators[3], povm.povm_operators[4], povm.povm_operators[5]]
-        )
-        self.assertListEqual(
-            povm[::2], [povm.povm_operators[0], povm.povm_operators[2], povm.povm_operators[4]]
-        )
-        self.assertListEqual(
-            povm[2::-1], [povm.povm_operators[2], povm.povm_operators[1], povm.povm_operators[0]]
-        )
+        self.assertEqual(povm[0], povm.operators[0])
+        self.assertListEqual(povm[3:], [povm.operators[3], povm.operators[4], povm.operators[5]])
+        self.assertListEqual(povm[::2], [povm.operators[0], povm.operators[2], povm.operators[4]])
+        self.assertListEqual(povm[2::-1], [povm.operators[2], povm.operators[1], povm.operators[0]])
 
     # TODO
     def test_build_from_vectors(self):
@@ -89,7 +83,8 @@ class TestMultiQubitPOVM(TestCase):
                 ]
             )
             obs = random_hermitian(dims=2**1)
-            omegas = povm.get_omegas(obs)
+            dual = MultiQubitDUAL.build_dual_from_frame(povm)
+            omegas = dual.get_omegas(obs)
             dec = np.zeros((2, 2), dtype=complex)
             for k in range(povm.n_outcomes):
                 dec += omegas[k] * povm[k].data
@@ -99,30 +94,47 @@ class TestMultiQubitPOVM(TestCase):
         with self.subTest("Multi-qubit case"):
             self.assertTrue(True)
 
-    def test_set_alphas(self):
-        povm = MultiQubitPOVM(
-            [
-                1.0 / 2 * Operator.from_label("0"),
-                1.0 / 2 * Operator.from_label("1"),
-                1.0 / 3 * Operator.from_label("+"),
-                1.0 / 3 * Operator.from_label("-"),
-                1.0 / 6 * Operator.from_label("r"),
-                1.0 / 6 * Operator.from_label("l"),
-            ]
-        )
-        obs = random_hermitian(dims=2**1)
-        omegas1 = povm.get_omegas(obs)
-        dec = np.zeros((2, 2), dtype=complex)
-        for k in range(povm.n_outcomes):
-            dec += omegas1[k] * povm[k].data
-        self.assertTrue(np.allclose(obs, dec))
-        povm.alphas = np.array([1.0, 1.0, 1.0, 1.0, 1.0, 1.0])
-        omegas2 = povm.get_omegas(obs)
-        self.assertFalse(np.allclose(omegas1, omegas2))
-        dec = np.zeros((2, 2), dtype=complex)
-        for k in range(povm.n_outcomes):
-            dec += omegas2[k] * povm[k].data
-        self.assertTrue(np.allclose(obs, dec))
+    def test_informationally_complete(self):
+        """Test whether a POVM is informationally complete or not."""
+        with self.subTest("SIC-POVM"):
+            import cmath
+
+            vecs = np.sqrt(1.0 / 2.0) * np.array(
+                [
+                    [1, 0],
+                    [np.sqrt(1.0 / 3.0), np.sqrt(2.0 / 3.0)],
+                    [np.sqrt(1.0 / 3.0), np.sqrt(2.0 / 3.0) * cmath.exp(2.0j * np.pi / 3)],
+                    [np.sqrt(1.0 / 3.0), np.sqrt(2.0 / 3.0) * cmath.exp(4.0j * np.pi / 3)],
+                ]
+            )
+            sic_povm = MultiQubitPOVM.from_vectors(vecs)
+            self.assertTrue(sic_povm.informationally_complete)
+
+        with self.subTest("CS-POVM"):
+            coef = 1.0 / 3.0
+            cs_povm = MultiQubitPOVM(
+                [
+                    coef * Operator.from_label("0"),
+                    coef * Operator.from_label("1"),
+                    coef * Operator.from_label("+"),
+                    coef * Operator.from_label("-"),
+                    coef * Operator.from_label("r"),
+                    coef * Operator.from_label("l"),
+                ]
+            )
+            self.assertTrue(cs_povm.informationally_complete)
+
+        with self.subTest("Non IC-POVM"):
+            coef = 1.0 / 2.0
+            povm = MultiQubitPOVM(
+                [
+                    coef * Operator.from_label("0"),
+                    coef * Operator.from_label("1"),
+                    coef * Operator.from_label("+"),
+                    coef * Operator.from_label("-"),
+                ]
+            )
+            self.assertFalse(povm.informationally_complete)
 
     # TODO: write a unittest for each public method of MultiQubitPOVM
 
diff --git a/test/quantum_info/test_product_povm.py b/test/quantum_info/test_product_povm.py
index 3529761..1afff56 100644
--- a/test/quantum_info/test_product_povm.py
+++ b/test/quantum_info/test_product_povm.py
@@ -14,9 +14,10 @@ from unittest import TestCase
 
 import numpy as np
 from povm_toolbox.quantum_info.multi_qubit_povm import MultiQubitPOVM
+from povm_toolbox.quantum_info.product_dual import ProductDUAL
 from povm_toolbox.quantum_info.product_povm import ProductPOVM
 from povm_toolbox.quantum_info.single_qubit_povm import SingleQubitPOVM
-from qiskit.quantum_info import DensityMatrix, Operator, random_density_matrix
+from qiskit.quantum_info import DensityMatrix, Operator, random_density_matrix, random_hermitian
 
 
 class TestProductPOVM(TestCase):
@@ -66,21 +67,18 @@ class TestProductPOVM(TestCase):
             product = ProductPOVM(povms)
             self.assertEqual(product.dimension, 8)
             self.assertEqual(product.n_outcomes, 8)
-            self.assertEqual(product.n_operators, 6)
             self.assertEqual(product.n_subsystems, 3)
         with self.subTest("MultiQubitPOVM objects"):
             povms = {(0, 1): mqp, (2, 3): mqp}
             product = ProductPOVM(povms)
             self.assertEqual(product.dimension, 16)
             self.assertEqual(product.n_outcomes, 16)
-            self.assertEqual(product.n_operators, 8)
             self.assertEqual(product.n_subsystems, 4)
         with self.subTest("SingleQubitPOVM + MultiQubitPOVM objects"):
             povms = {(0,): sqp, (1,): sqp, (2, 3): mqp}
             product = ProductPOVM(povms)
             self.assertEqual(product.dimension, 16)
             self.assertEqual(product.n_outcomes, 16)
-            self.assertEqual(product.n_operators, 8)
             self.assertEqual(product.n_subsystems, 4)
         with self.subTest("Invalid POVM subsystem indices"), self.assertRaises(ValueError):
             _ = ProductPOVM({(0, 0): mqp})
@@ -206,6 +204,85 @@ class TestProductPOVM(TestCase):
             self.assertTrue(np.allclose(prod_povm1.get_prob(rho3), npzfile["prob_1_3"]))
             self.assertTrue(np.allclose(prod_povm2.get_prob(rho3), npzfile["prob_2_3"]))
 
+    def test_build_dual(self):
+        seed = 12
+        n_qubit = 3
+        rng = np.random.RandomState(seed)
+        q = rng.uniform(0, 5, size=3 * n_qubit).reshape((n_qubit, 3))
+        q /= q.sum(axis=1)[:, np.newaxis]
+
+        povm_list = []
+        for i in range(n_qubit):
+            povm_list.append(
+                SingleQubitPOVM(
+                    [
+                        q[i, 0] * Operator.from_label("0"),
+                        q[i, 0] * Operator.from_label("1"),
+                        q[i, 1] * Operator.from_label("+"),
+                        q[i, 1] * Operator.from_label("-"),
+                        q[i, 2] * Operator.from_label("r"),
+                        q[i, 2] * Operator.from_label("l"),
+                    ]
+                )
+            )
+
+        prod_povm = ProductPOVM.from_list(povm_list)
+
+        dual = ProductDUAL.build_dual_from_frame(prod_povm)
+
+        obs = random_hermitian(dims=2**n_qubit)
+        omegas = dual.get_omegas(obs)
+        self.assertIsInstance(omegas[0, 0, 0], float)
+
+        self.assertTrue(dual.is_dual_to(prod_povm))
+
+    def test_informationally_complete(self):
+        """Test whether a POVM is informationally complete or not."""
+        import cmath
+
+        vecs = np.sqrt(1.0 / 2.0) * np.array(
+            [
+                [1, 0],
+                [np.sqrt(1.0 / 3.0), np.sqrt(2.0 / 3.0)],
+                [np.sqrt(1.0 / 3.0), np.sqrt(2.0 / 3.0) * cmath.exp(2.0j * np.pi / 3)],
+                [np.sqrt(1.0 / 3.0), np.sqrt(2.0 / 3.0) * cmath.exp(4.0j * np.pi / 3)],
+            ]
+        )
+        sic_povm = MultiQubitPOVM.from_vectors(vecs)
+
+        coef = 1.0 / 3.0
+        cs_povm = MultiQubitPOVM(
+            [
+                coef * Operator.from_label("0"),
+                coef * Operator.from_label("1"),
+                coef * Operator.from_label("+"),
+                coef * Operator.from_label("-"),
+                coef * Operator.from_label("r"),
+                coef * Operator.from_label("l"),
+            ]
+        )
+
+        coef = 1.0 / 2.0
+        non_ic_povm = MultiQubitPOVM(
+            [
+                coef * Operator.from_label("0"),
+                coef * Operator.from_label("1"),
+                coef * Operator.from_label("+"),
+                coef * Operator.from_label("-"),
+            ]
+        )
+
+        self.assertTrue(ProductPOVM.from_list([sic_povm, cs_povm]).informationally_complete)
+        self.assertFalse(ProductPOVM.from_list([sic_povm, non_ic_povm]).informationally_complete)
+        self.assertFalse(ProductPOVM.from_list([non_ic_povm, non_ic_povm]).informationally_complete)
+
+        self.assertTrue(
+            ProductPOVM.from_list([sic_povm, cs_povm, cs_povm]).informationally_complete
+        )
+        self.assertFalse(
+            ProductPOVM.from_list([sic_povm, cs_povm, non_ic_povm]).informationally_complete
+        )
+
     # TODO
     def test_build_from_vectors(self):
         if True:
diff --git a/test/quantum_info/test_single_qubit_povm.py b/test/quantum_info/test_single_qubit_povm.py
index c7af254..5b4c59d 100644
--- a/test/quantum_info/test_single_qubit_povm.py
+++ b/test/quantum_info/test_single_qubit_povm.py
@@ -31,7 +31,7 @@ class TestSingleQubitPovm(TestCase):
             ops = np.random.uniform(-1, 1, (6, 2, 2)) + 1.0j * np.random.uniform(-1, 1, (6, 2, 2))
 
         with self.assertRaises(ValueError):
-            povm1 = SingleQubitPOVM(povm_ops=[Operator(op) for op in ops])
+            povm1 = SingleQubitPOVM(list_operators=[Operator(op) for op in ops])
             povm1.check_validity()
 
     def test_pauli_decomposition(self):
@@ -39,16 +39,16 @@ class TestSingleQubitPovm(TestCase):
 
         # TODO : select a random POVM ...
         dim = 2
-        eival = np.random.uniform(low=-5, high=5, size=dim)
+        eigval = np.random.uniform(low=-5, high=5, size=dim)
         x = unitary_group.rvs(dim)  # , random_state=seed_obs[i])
-        obs = x @ np.diag(eival) @ x.T.conj()
+        obs = x @ np.diag(eigval) @ x.T.conj()
 
         _, V = np.linalg.eigh(obs)
 
         sqpovm = SingleQubitPOVM.from_vectors(V)
 
         summed = defaultdict(complex)
-        for pauli_op in sqpovm.pauli_operators():
+        for pauli_op in sqpovm.pauli_operators:
             for pauli, coeff in pauli_op.items():
                 summed[pauli] += coeff