diff --git a/dev/.buildinfo b/dev/.buildinfo index d9e726f7a..ca750e28e 100644 --- a/dev/.buildinfo +++ b/dev/.buildinfo @@ -1,4 +1,4 @@ # Sphinx build info version 1 # This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 3f42b26e744de3b3c03d8942817502fb +config: 9de503a36116110396a4cbcc25a3eda2 tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/dev/.doctrees/environment.pickle b/dev/.doctrees/environment.pickle index 354312f40..2330fb9be 100644 Binary files a/dev/.doctrees/environment.pickle and b/dev/.doctrees/environment.pickle differ diff --git a/dev/.doctrees/explanations/hamiltonians.doctree b/dev/.doctrees/explanations/hamiltonians.doctree index 4d71fa548..da6fda193 100644 Binary files a/dev/.doctrees/explanations/hamiltonians.doctree and b/dev/.doctrees/explanations/hamiltonians.doctree differ diff --git a/dev/.doctrees/how-to-guides/entanglement-forging.doctree b/dev/.doctrees/how-to-guides/entanglement-forging.doctree index 619efafaf..6349a339a 100644 Binary files a/dev/.doctrees/how-to-guides/entanglement-forging.doctree and b/dev/.doctrees/how-to-guides/entanglement-forging.doctree differ diff --git a/dev/.doctrees/how-to-guides/fermion-operator.doctree b/dev/.doctrees/how-to-guides/fermion-operator.doctree index af02bbc0c..f025d6e12 100644 Binary files a/dev/.doctrees/how-to-guides/fermion-operator.doctree and b/dev/.doctrees/how-to-guides/fermion-operator.doctree differ diff --git a/dev/.doctrees/how-to-guides/lucj.doctree b/dev/.doctrees/how-to-guides/lucj.doctree index 62b87e3ae..f95a99f57 100644 Binary files a/dev/.doctrees/how-to-guides/lucj.doctree and b/dev/.doctrees/how-to-guides/lucj.doctree differ diff --git a/dev/.doctrees/how-to-guides/qiskit-circuits.doctree b/dev/.doctrees/how-to-guides/qiskit-circuits.doctree index 868a5806b..8abee2426 100644 Binary files a/dev/.doctrees/how-to-guides/qiskit-circuits.doctree and b/dev/.doctrees/how-to-guides/qiskit-circuits.doctree differ diff --git a/dev/.doctrees/how-to-guides/qiskit-sampler.doctree b/dev/.doctrees/how-to-guides/qiskit-sampler.doctree index f7945d526..84328d0de 100644 Binary files a/dev/.doctrees/how-to-guides/qiskit-sampler.doctree and b/dev/.doctrees/how-to-guides/qiskit-sampler.doctree differ diff --git a/dev/.doctrees/nbsphinx/explanations/hamiltonians.ipynb b/dev/.doctrees/nbsphinx/explanations/hamiltonians.ipynb index 6c80780f1..f3676551f 100644 --- a/dev/.doctrees/nbsphinx/explanations/hamiltonians.ipynb +++ b/dev/.doctrees/nbsphinx/explanations/hamiltonians.ipynb @@ -33,10 +33,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:39.552304Z", - "iopub.status.busy": "2024-08-06T20:19:39.552101Z", - "iopub.status.idle": "2024-08-06T20:19:40.265412Z", - "shell.execute_reply": "2024-08-06T20:19:40.264821Z" + "iopub.execute_input": "2024-08-06T20:24:44.379773Z", + "iopub.status.busy": "2024-08-06T20:24:44.379246Z", + "iopub.status.idle": "2024-08-06T20:24:45.092552Z", + "shell.execute_reply": "2024-08-06T20:24:45.091936Z" } }, "outputs": [], @@ -68,10 +68,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.268514Z", - "iopub.status.busy": "2024-08-06T20:19:40.267873Z", - "iopub.status.idle": "2024-08-06T20:19:40.270960Z", - "shell.execute_reply": "2024-08-06T20:19:40.270453Z" + "iopub.execute_input": "2024-08-06T20:24:45.095527Z", + "iopub.status.busy": "2024-08-06T20:24:45.095083Z", + "iopub.status.idle": "2024-08-06T20:24:45.098020Z", + "shell.execute_reply": "2024-08-06T20:24:45.097540Z" } }, "outputs": [], @@ -99,10 +99,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.273316Z", - "iopub.status.busy": "2024-08-06T20:19:40.272951Z", - "iopub.status.idle": "2024-08-06T20:19:40.276088Z", - "shell.execute_reply": "2024-08-06T20:19:40.275632Z" + "iopub.execute_input": "2024-08-06T20:24:45.100279Z", + "iopub.status.busy": "2024-08-06T20:24:45.099929Z", + "iopub.status.idle": "2024-08-06T20:24:45.103209Z", + "shell.execute_reply": "2024-08-06T20:24:45.102613Z" } }, "outputs": [], @@ -127,10 +127,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.278357Z", - "iopub.status.busy": "2024-08-06T20:19:40.277999Z", - "iopub.status.idle": "2024-08-06T20:19:40.282979Z", - "shell.execute_reply": "2024-08-06T20:19:40.282382Z" + "iopub.execute_input": "2024-08-06T20:24:45.105678Z", + "iopub.status.busy": "2024-08-06T20:24:45.105326Z", + "iopub.status.idle": "2024-08-06T20:24:45.110457Z", + "shell.execute_reply": "2024-08-06T20:24:45.109920Z" } }, "outputs": [], @@ -152,17 +152,17 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.285696Z", - "iopub.status.busy": "2024-08-06T20:19:40.285112Z", - "iopub.status.idle": "2024-08-06T20:19:40.305553Z", - "shell.execute_reply": "2024-08-06T20:19:40.304896Z" + "iopub.execute_input": "2024-08-06T20:24:45.113599Z", + "iopub.status.busy": "2024-08-06T20:24:45.113188Z", + "iopub.status.idle": "2024-08-06T20:24:45.135280Z", + "shell.execute_reply": "2024-08-06T20:24:45.134617Z" } }, "outputs": [ { "data": { "text/plain": [ - "np.float64(-99.55717072551545)" + "np.float64(-99.55717072551558)" ] }, "execution_count": 5, @@ -191,10 +191,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.340166Z", - "iopub.status.busy": "2024-08-06T20:19:40.339768Z", - "iopub.status.idle": "2024-08-06T20:19:40.756460Z", - "shell.execute_reply": "2024-08-06T20:19:40.755820Z" + "iopub.execute_input": "2024-08-06T20:24:45.169231Z", + "iopub.status.busy": "2024-08-06T20:24:45.168800Z", + "iopub.status.idle": "2024-08-06T20:24:45.583700Z", + "shell.execute_reply": "2024-08-06T20:24:45.583018Z" } }, "outputs": [ @@ -202,7 +202,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/tmp/ipykernel_4324/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n", + "/tmp/ipykernel_4340/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n", " evolved_vec = scipy.sparse.linalg.expm_multiply(-1j * time * linop, vec)\n" ] } @@ -224,10 +224,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.760806Z", - "iopub.status.busy": "2024-08-06T20:19:40.759843Z", - "iopub.status.idle": "2024-08-06T20:19:41.134423Z", - "shell.execute_reply": "2024-08-06T20:19:41.133771Z" + "iopub.execute_input": "2024-08-06T20:24:45.588023Z", + "iopub.status.busy": "2024-08-06T20:24:45.586986Z", + "iopub.status.idle": "2024-08-06T20:24:45.956809Z", + "shell.execute_reply": "2024-08-06T20:24:45.956160Z" } }, "outputs": [], diff --git a/dev/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb b/dev/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb index 457d71722..19fbf2420 100644 --- a/dev/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb +++ b/dev/.doctrees/nbsphinx/explanations/orbital-rotation.ipynb @@ -62,10 +62,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:44.373937Z", - "iopub.status.busy": "2024-08-06T20:19:44.373720Z", - "iopub.status.idle": "2024-08-06T20:19:45.088298Z", - "shell.execute_reply": "2024-08-06T20:19:45.087693Z" + "iopub.execute_input": "2024-08-06T20:24:49.282666Z", + "iopub.status.busy": "2024-08-06T20:24:49.282429Z", + "iopub.status.idle": "2024-08-06T20:24:50.045922Z", + "shell.execute_reply": "2024-08-06T20:24:50.045239Z" } }, "outputs": [], diff --git a/dev/.doctrees/nbsphinx/explanations/qiskit-gate-decompositions.ipynb b/dev/.doctrees/nbsphinx/explanations/qiskit-gate-decompositions.ipynb index e34d86836..22b1b7ad8 100644 --- a/dev/.doctrees/nbsphinx/explanations/qiskit-gate-decompositions.ipynb +++ b/dev/.doctrees/nbsphinx/explanations/qiskit-gate-decompositions.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:46.702638Z", - "iopub.status.busy": "2024-08-06T20:19:46.702165Z", - "iopub.status.idle": "2024-08-06T20:19:48.251098Z", - "shell.execute_reply": "2024-08-06T20:19:48.250518Z" + "iopub.execute_input": "2024-08-06T20:24:51.709980Z", + "iopub.status.busy": "2024-08-06T20:24:51.709777Z", + "iopub.status.idle": "2024-08-06T20:24:53.360852Z", + "shell.execute_reply": "2024-08-06T20:24:53.360254Z" } }, "outputs": [ @@ -81,10 +81,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.253793Z", - "iopub.status.busy": "2024-08-06T20:19:48.253272Z", - "iopub.status.idle": "2024-08-06T20:19:48.449485Z", - "shell.execute_reply": "2024-08-06T20:19:48.448872Z" + "iopub.execute_input": "2024-08-06T20:24:53.363643Z", + "iopub.status.busy": "2024-08-06T20:24:53.363079Z", + "iopub.status.idle": "2024-08-06T20:24:53.560717Z", + "shell.execute_reply": "2024-08-06T20:24:53.560146Z" } }, "outputs": [ @@ -119,10 +119,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.451940Z", - "iopub.status.busy": "2024-08-06T20:19:48.451626Z", - "iopub.status.idle": "2024-08-06T20:19:48.562785Z", - "shell.execute_reply": "2024-08-06T20:19:48.562173Z" + "iopub.execute_input": "2024-08-06T20:24:53.563163Z", + "iopub.status.busy": "2024-08-06T20:24:53.562960Z", + "iopub.status.idle": "2024-08-06T20:24:53.674120Z", + "shell.execute_reply": "2024-08-06T20:24:53.673549Z" } }, "outputs": [ @@ -156,10 +156,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.565552Z", - "iopub.status.busy": "2024-08-06T20:19:48.565100Z", - "iopub.status.idle": "2024-08-06T20:19:48.677229Z", - "shell.execute_reply": "2024-08-06T20:19:48.676561Z" + "iopub.execute_input": "2024-08-06T20:24:53.676738Z", + "iopub.status.busy": "2024-08-06T20:24:53.676336Z", + "iopub.status.idle": "2024-08-06T20:24:53.789203Z", + "shell.execute_reply": "2024-08-06T20:24:53.788596Z" } }, "outputs": [ @@ -196,10 +196,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.679670Z", - "iopub.status.busy": "2024-08-06T20:19:48.679468Z", - "iopub.status.idle": "2024-08-06T20:19:48.865586Z", - "shell.execute_reply": "2024-08-06T20:19:48.864976Z" + "iopub.execute_input": "2024-08-06T20:24:53.791819Z", + "iopub.status.busy": "2024-08-06T20:24:53.791450Z", + "iopub.status.idle": "2024-08-06T20:24:53.979082Z", + "shell.execute_reply": "2024-08-06T20:24:53.978392Z" } }, "outputs": [ @@ -250,10 +250,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.868313Z", - "iopub.status.busy": "2024-08-06T20:19:48.867900Z", - "iopub.status.idle": "2024-08-06T20:19:49.090157Z", - "shell.execute_reply": "2024-08-06T20:19:49.089542Z" + "iopub.execute_input": "2024-08-06T20:24:53.981664Z", + "iopub.status.busy": "2024-08-06T20:24:53.981461Z", + "iopub.status.idle": "2024-08-06T20:24:54.207665Z", + "shell.execute_reply": "2024-08-06T20:24:54.207024Z" } }, "outputs": [ @@ -292,10 +292,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:49.092686Z", - "iopub.status.busy": "2024-08-06T20:19:49.092278Z", - "iopub.status.idle": "2024-08-06T20:19:49.228953Z", - "shell.execute_reply": "2024-08-06T20:19:49.228386Z" + "iopub.execute_input": "2024-08-06T20:24:54.210219Z", + "iopub.status.busy": "2024-08-06T20:24:54.210017Z", + "iopub.status.idle": "2024-08-06T20:24:54.347320Z", + "shell.execute_reply": "2024-08-06T20:24:54.346674Z" } }, "outputs": [ @@ -334,10 +334,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:49.231531Z", - "iopub.status.busy": "2024-08-06T20:19:49.231135Z", - "iopub.status.idle": "2024-08-06T20:19:49.763939Z", - "shell.execute_reply": "2024-08-06T20:19:49.763288Z" + "iopub.execute_input": "2024-08-06T20:24:54.349837Z", + "iopub.status.busy": "2024-08-06T20:24:54.349634Z", + "iopub.status.idle": "2024-08-06T20:24:54.908270Z", + "shell.execute_reply": "2024-08-06T20:24:54.907666Z" } }, "outputs": [ @@ -383,10 +383,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:49.766630Z", - "iopub.status.busy": "2024-08-06T20:19:49.766233Z", - "iopub.status.idle": "2024-08-06T20:19:49.938415Z", - "shell.execute_reply": "2024-08-06T20:19:49.937753Z" + "iopub.execute_input": "2024-08-06T20:24:54.911012Z", + "iopub.status.busy": "2024-08-06T20:24:54.910604Z", + "iopub.status.idle": "2024-08-06T20:24:55.082168Z", + "shell.execute_reply": "2024-08-06T20:24:55.081575Z" } }, "outputs": [ @@ -425,10 +425,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:49.941117Z", - "iopub.status.busy": "2024-08-06T20:19:49.940710Z", - "iopub.status.idle": "2024-08-06T20:19:50.124222Z", - "shell.execute_reply": "2024-08-06T20:19:50.123565Z" + "iopub.execute_input": "2024-08-06T20:24:55.084566Z", + "iopub.status.busy": "2024-08-06T20:24:55.084356Z", + "iopub.status.idle": "2024-08-06T20:24:55.267114Z", + "shell.execute_reply": "2024-08-06T20:24:55.266473Z" } }, "outputs": [ @@ -474,10 +474,10 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.126905Z", - "iopub.status.busy": "2024-08-06T20:19:50.126501Z", - "iopub.status.idle": "2024-08-06T20:19:50.258289Z", - "shell.execute_reply": "2024-08-06T20:19:50.257655Z" + "iopub.execute_input": "2024-08-06T20:24:55.269526Z", + "iopub.status.busy": "2024-08-06T20:24:55.269324Z", + "iopub.status.idle": "2024-08-06T20:24:55.403463Z", + "shell.execute_reply": "2024-08-06T20:24:55.402851Z" } }, "outputs": [ @@ -513,10 +513,10 @@ "execution_count": 12, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.261002Z", - "iopub.status.busy": "2024-08-06T20:19:50.260606Z", - "iopub.status.idle": "2024-08-06T20:19:50.442036Z", - "shell.execute_reply": "2024-08-06T20:19:50.441379Z" + "iopub.execute_input": "2024-08-06T20:24:55.406018Z", + "iopub.status.busy": "2024-08-06T20:24:55.405637Z", + "iopub.status.idle": "2024-08-06T20:24:55.588982Z", + "shell.execute_reply": "2024-08-06T20:24:55.588405Z" } }, "outputs": [ @@ -553,10 +553,10 @@ "execution_count": 13, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.444839Z", - "iopub.status.busy": "2024-08-06T20:19:50.444406Z", - "iopub.status.idle": "2024-08-06T20:19:50.606875Z", - "shell.execute_reply": "2024-08-06T20:19:50.606264Z" + "iopub.execute_input": "2024-08-06T20:24:55.591810Z", + "iopub.status.busy": "2024-08-06T20:24:55.591324Z", + "iopub.status.idle": "2024-08-06T20:24:55.757074Z", + "shell.execute_reply": "2024-08-06T20:24:55.756406Z" } }, "outputs": [ @@ -593,10 +593,10 @@ "execution_count": 14, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.609564Z", - "iopub.status.busy": "2024-08-06T20:19:50.609164Z", - "iopub.status.idle": "2024-08-06T20:19:50.741075Z", - "shell.execute_reply": "2024-08-06T20:19:50.740513Z" + "iopub.execute_input": "2024-08-06T20:24:55.759820Z", + "iopub.status.busy": "2024-08-06T20:24:55.759340Z", + "iopub.status.idle": "2024-08-06T20:24:55.893463Z", + "shell.execute_reply": "2024-08-06T20:24:55.892862Z" } }, "outputs": [ @@ -630,10 +630,10 @@ "execution_count": 15, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.743744Z", - "iopub.status.busy": "2024-08-06T20:19:50.743342Z", - "iopub.status.idle": "2024-08-06T20:19:50.903722Z", - "shell.execute_reply": "2024-08-06T20:19:50.903095Z" + "iopub.execute_input": "2024-08-06T20:24:55.896047Z", + "iopub.status.busy": "2024-08-06T20:24:55.895696Z", + "iopub.status.idle": "2024-08-06T20:24:56.154218Z", + "shell.execute_reply": "2024-08-06T20:24:56.153611Z" } }, "outputs": [ @@ -677,10 +677,10 @@ "execution_count": 16, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.906456Z", - "iopub.status.busy": "2024-08-06T20:19:50.906061Z", - "iopub.status.idle": "2024-08-06T20:19:51.329523Z", - "shell.execute_reply": "2024-08-06T20:19:51.328887Z" + "iopub.execute_input": "2024-08-06T20:24:56.156719Z", + "iopub.status.busy": "2024-08-06T20:24:56.156376Z", + "iopub.status.idle": "2024-08-06T20:24:56.482595Z", + "shell.execute_reply": "2024-08-06T20:24:56.482023Z" } }, "outputs": [ @@ -736,16 +736,16 @@ "execution_count": 17, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:51.332040Z", - "iopub.status.busy": "2024-08-06T20:19:51.331670Z", - "iopub.status.idle": "2024-08-06T20:19:51.793507Z", - "shell.execute_reply": "2024-08-06T20:19:51.792844Z" + "iopub.execute_input": "2024-08-06T20:24:56.485345Z", + "iopub.status.busy": "2024-08-06T20:24:56.484849Z", + "iopub.status.idle": "2024-08-06T20:24:56.957927Z", + "shell.execute_reply": "2024-08-06T20:24:56.957248Z" } }, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABLsAAAMkCAYAAABQkSLjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAADWwElEQVR4nOzdeXhU1f3H8fcsISFkI0GWsCSBsGMIBUEgSNgUbAVRcQMFCu5LsRUXBIsKWLSg1SIuYFl+QrFWC1hA0WZEMBBZIigQkgAREcISQ1ayzfz+GBkYEsKSZCYz+byeJw+5554753svN3fufOeccw02m82GiIiIiIiIiIiIFzC6OwAREREREREREZHqomSXiIiIiIiIiIh4DSW7RERERERERETEayjZJSIiIiIiIiIiXkPJLhERERERERER8RpKdomIiIiIiIiIiNdQsktERERERERERLyGkl0iIiIiIiIiIuI1lOwSERERERERERGvoWSXiIiIiIiIiIh4DSW7RERERERERETEayjZJSIiIiIiIiIiXkPJLhERERERERER8RpKdomIiIiIiIiIiNdQsktERERERERERLyGkl0iIiIiIiIiIuI1lOwSERERERERERGvoWSXiIiIiIiIiIh4DSW7RERERERERETEayjZJSIiIiIiIiIiXkPJLhERERERERER8RpKdomIiIiIiIiIiNdQsktERERERERERLyGkl0iIiIiIiIiIuI1lOwSERERERERERGvoWSXiIiIiIiIiIh4DSW7RERERERERETEayjZJSIiIiIiIiIiXkPJLhERERERERER8RpmdwdQmxXnFvDLnh/dHYbXaNixFfUC/S9aL68E0nJcEFAFooMgwMc9bYuIiIiIiIhI1SnZVYlf9vzI2hFT3R2G1xi2cgZNena4aL20HJi4yQUBVWBBX4gNc0/bIiIiIiIiIlJ1GsYoIiIiIiIiIiJeQ8kuERERERERERHxGkp2iYiIiIiIiIiI11CyS0REREREREREvIYmqBevkPJcPPl7EzGYfTCYzPg170D4mJkEdR3k7tBERERERERExIXUs0u8RviYmXRbkUfM4kwatO9N+qybKcs/5e6wRERERERERMSFlOwSr2P08aXRkAlYT+dx+kiau8MRERERERERERdSsku8jrWokBPrF2D0D8IvvK27wxERERERERER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XkRERERERES8i3p2iYiIiIiIiIiI11CyS0REREREREREvIaSXSIiIiIiIiIi4jWU7BIREREREREREa+hCeql1okOggV93de2iIiIiIiIiHguJbuk1gnwgdgwd0chIiIiIiIiIp5IwxhF6iiLxUJUVBTx8fGMHTu23PqZM2eSmppa6Ws89thj9OvXj1mzZpVbd/DgQZo1a0Z8fDz33nsvGzdu5Nprr6VPnz7MmTMHgHXr1hEfH098fDxhYWEkJyezZ88eZs+eXT07KSIiIiIiInWOkl0iddiECROwWCwEBweTmJjoKLdarezcuZO2bdtecNutW7diNpv5+uuv2b59O5mZmeXq/Pa3v8VisbBkyRJat27Nhg0b+Oabb/j0008pKChg6NChWCwWEhISaN26NV27dqVjx45s374dm81WI/ssIiIiIiIi3k3JLhGhS5cuHD582LH83Xff0a5du0q32bJlCwMHDgSgf//+bNu2rVydzz77jH79+vHBBx8QHh5OvXr1ADCZTBiNZy8/3377LT169MBgMADQunVrfvjhhyrvl4iIiIiIiNQ9SnaJCImJiURHRzuWU1NTiYyMrHSb7OxsgoLsM/oHBgaSnZ3ttL5Zs2akpKTw+eef884773Dy5EkA1q9fT5s2bfDz83PUXblyJSNGjHAsR0REsG/fvirulYiIiIiIiNRFmqBepA5buHAhX3zxBXFxccTGxlZYZ/fu3Tz88MNOZUOHDiUkJIScnBwAcnNzadOmjVMdX19fx+/9+vUjPT2dwsJCXn75ZVatWuVUNyEhgT//+c/VsEciIiIiIiJS1ynZJVKHTZgwgalTp5Yrb9u2LR9//DEAnTp1wmKxlKvz7bffsnz5cm666SY2bNjA7bff7rQ+Ly+PgIAAbDYbW7du5f7772fcuHHMnz+fgIAAR739+/fTokULxxBHgIyMDPr27VtNeykiIiIiIiJ1iYYxikg5Xbt2JSUlpdI611xzDUVFRfTr14+uXbvSpEkTjh49yquvvgrAN998Q48ePejTpw/XX389//vf/9i9ezcPPPAA8fHxjjnCzh/CCJCWlkaXLl1qZudERERERETEq6lnl0gdFR8fT3x8fIXrjEYjMTExpKamVvpExnnz5jktN23alMmTJwNw/fXXc/311zutHz9+fLnXeOKJJ5yW9+zZQ/fu3R2T1YuIiIiI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ERERERERqRlKdonHaPXgPKdl/9axADS9ZTJNb5lc4TbnJrXaz/qqpkITERERERERkVpCwxhFRERERERERMRrKNklIiIiIiIiIiJeQ8kuERERERERERHxGkp2iYiIiIiIiIiI19AE9VLrRAfBgr7ua1tERMSdLBYL48ePJyIigoiICBYvXuy0funSpTRr1ozBgwcza9Ys1q5dS2xsLG+++aZTvXHjxpGSkoKvry/PP/88AwcO5Prrr6ewsJCgoCBWrFhBQEAAW7ZsYcqUKVitVmbPnk10dDQzZsxg7ty5rtxt8VLVdT6vW7eOF154gcDAQBYtWkR4eDhPPvkkixcv5rXXXmPMmDEAxMfHA3D8+HGGDBnCX//6Vx588EEWLFjgkv0VEZHaQckuqXUCfCA2zN1RiIiIuM+ECROYOnUqjz/+OImJifTu3duxbvXq1axYsYLMzEy2b9/O119/zRNPPMHWrVvp0aOH0+v861//okWLFo7ld999l8jISBYuXMiyZcu47777mDNnDmvWrMHX19dRLzs7m7y8PAICAmp+Z8XrVcf5PHv2bBISEkhLS2P27Nn87W9/Y/LkyXTp0sWpLYvFAsCzzz7LgAEDMJvNXHXVVaSnp9OmTRuX7K+IiLifhjGKiIjIJbNYLERFRREfH8/YsWPLrZ85cyapqamVvsZjjz1Gv379mDVrllP5xo0bufbaa+nTpw9z5swB7L054uPjiY+PJywsjOTkZEf9119/ncGDBwOwZ88eZs+eXcW9q326dOnC4cOHHctZWVn4+flhMBjYunUr/fv3B2DgwIEkJSU5bWswGLjjjju4/fbbycrKAiAyMhIAk8mEwWAgPT2dwsJChg8fzujRo8nPzwegV69ejqSBSHWpyvlsNpvx8/Ojc+fOjnVNmjS5YFsWi8XRyys+Pp61a9dW896IiEhtpmSXiIiIXJYJEyZgsVgIDg4mMTHRUW61Wtm5cydt27a94LZbt27FbDbz9ddfs337djIzMx3rWrduzYYNG/jmm2/49NNPKSgoYOjQoVgsFhISEmjdujVdu3YFoKSkxCnx1bFjR7Zv347NZqv+HXajxMREoqOjHctpaWlEREQA9t5XQUH28feBgYFkZ2c7bTt37lw2bdrEHXfcwcsvv+woLygo4L333uP222/n2LFjpKens2rVKgYPHsx7770HQEREBPv27avhvZO6pirnc0lJCSdPnmTjxo2O5O2FnHndevXqATqfRUTqIiW7RERE5Iqc30vju+++o127dpVus2XLFgYOHAhA//792bZtm2NdeHi448OpyWTCaDx7m/Ltt9/So0cPDAYDYJ/n56677nJ67datW/PDDz9UbadqiYULFxIfH0/z5s2JjY2tsE5ISAg5OTkA5ObmEhIS4rS+YcOGAAwfPtzpuDz44INMnz6d4OBggoOD6dWrF76+vlx33XWkpKTUyP5I3VYd5/OMGTO47bbbWL58OZ06daq0vZUrVzJixIjqCF1ERDyUkl0iIiJyRc7vpZGamuoYJnchF+u9AbB+/XratGmDn5+fo+zcD69Wq5XPPvuMG264wWk7b+q9cab33IwZM5zKo6OjycjIAKB79+5s2LABgISEBHr27OlUNzc3F7D/P0VFRQH23l6dOnViyJAhALRr144jR45gs9nYtWuX4/8vIyOj0h56IpejOs7nuLg4EhISGDduHL169aq0vTVr1nDjjTc6lnU+i4jUPZqgXkRERC7LwoUL+eKLL4iLi7tgL43du3fz8MMPO5UNHTq0XO+N8yeM/umnn3j55ZdZtWqVU3lCQgJ//vOfAfj4448ZPnx4Ne2NZwkNDaWgoACApk2bEhMTQ79+/YiJiaFHjx4cPXqUpUuXMnnyZO69916OHz+Or68vixYtori4mGeffZbevXuzbt067rnnHiZMmMDo0aO57rrr8Pf3Z/ny5QBs3ryZN954w527KnXA5ZzPL774IhaLhebNm/POO+8A8Oqrr7Jo0SIMBgPHjh3jj3/8IydOnMDHx4fg4GBHOxaLhQkTJrhlH0VExD2U7BIREZHLcubJaudr27YtH3/8MQCdOnWqcILzb7/9luXLl3PTTTexYcMGbr/9dse6oqIixo0bx/z5852eArh//35atGjhGOKYkpKCxWJh6dKlJCcns2DBAiZOnEhGRgZ9+/at5r11vTMT8l/I8OHD+eKLLxg8eDDTpk1j2rRpjnVNmzZl8uTJAHzyySflti0qKipXds8993DPPfc4lrOysggJCSEwMLAKeyFiV13n8/PPP8/zzz/vtO3kyZMd689o1KgR69atcyyXlpZy7Ngxp16oIiLi/ZTsEhERkWrRtWtXp4nQK3LNNdewaNEi+vXrxw033ECTJk0cvTcaNWrE7t27eeCB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SUmhQYMGdO3alfz8fAAGDBjAlClTjtZLkCTpiBzJuXDXrl20bt2ali1bsnLlSqDi+bFbt26A50IdfQfrrfjAAw9QWFhY7WP86Ec/on///jz44IOV1uXn59O3b1/69OnDfffdB8ATTzzBoEGDCIfD7N27l6KiIi644AJyc3O57rrrAFi8eHH5F6BSTR3p/vzOO+/Qu3dv+vTpw29+85tK67du3coZZ5xBWloaACtXrqRt27aEw2GuueYawH1XCirDrmPE7NmzycrKKl9etmwZ7du3r/H9r776as477zwGDBgAwN69e9myZQvvvPMOW7duBaB9+/blwzgkSaprjuRc2LhxYwoLC/n0009ZtGhRefugQYO47bbbOOusswDPhYqNA/VWLCsrY/78+XTu3PmA9/3www9JSUlh5syZzJkzh40bN1ZYn5OTw7vvvsusWbOYPXs2q1evZsGCBbz55pvk5eWRmprK1KlT6devHzNmzCA1NZWFCxeSnZ3NnDlzHMarQ3Yk+3PHjh15++23mTVrFn//+9/ZvXt3hfWNGzfmjTfeoHfv3uVtF154IXl5eTz33HMA7rtSQBl2BdxTTz1FOBzmxBNPpGfPnof9OBMmTCA/P5+f/exnANx///1cdtllvPjii5x66qm1VK0kSbWvNs6FDzzwALfeeiujR4+mf//+5e1vvvkmkydPZsyYMbVTrHQIvtlb8eOPP+bkk0+u9j7vv/8+AwcOBCA3N5ePPvqowvp9PRZLS0s54YQTmDp1Krt27WLgwIHl+3lmZia7du0Coj0bmzZtCkSDh6+HwdKhOJz9+YQTTqBevXoAJCcnk5RU8eNtamoq6enpFdpef/11+vfvzwsvvFDe5r4rBY9hV8Dt+6bk/vvvr9CelZXFqlWravQYxcXFAKSlpXHccccB0K9fP6ZPn861115Lr169AFi1alW137xIkhQPtXEuzM7O5o033uChhx6iS5cuwP7zY9OmTWnYsCHguVCx9c3eioWFhXTo0KHa+2zbto0mTZoA0V4v27Ztq7TNxIkTyc7OplmzZmzatIlQKMRbb73FihUrmDdvHllZWcycOZPs7GxCoRAZGRmAPRt1ZA5nf97njTfeoFOnTjRo0KDa7dq2bUtBQQFTp07liSeeYMuWLYD7rhREhl3HqPT09ArdfEeMGMHUqVMZPnw4b775JgB33HEH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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAABLsAAAMkCAYAAABQkSLjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAADZUklEQVR4nOzdd3hUVf7H8feUQHpCQg2EJCQQQwnJ0puEYmF3ARGxouiCa3dx7Qq77AooupZ1VVx/4IooiLLsIi4ooMQARkKLICWFEnqUEtLrzO+PkUBICCXJtHxez8Mjc+6Ze773eLlz5zvnnGuwWq1WRERERERERERE3IDR0QGIiIiIiIiIiIjUFyW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNswOzoAZ1aaV8ipXQccHYbbaBbTniZ+3hetl18Gmbl2CKgGUf7g6+GYtkVERERERESk7pTsqsWpXQdYMXqKo8NwGyOWTqdV76suWi8zFyatt0NANZgzAOKCHdO2iIiIiIiIiNSdpjGKiIiIiIiIiIjbULJLRERERERERETchpJdIiIiIiIiIiLiNpTsEhERERERERERt6EF6sUtpD2fQMHuZAxmDwwmM55tryJk/Az8uw9zdGgiIiIiIiIiYkca2SVuI2T8DOIX5RM7Lxuf6H7smXkDFQWnHR2WiIiIiIiIiNiRkl3idoweTWl+zUQsxfkUH810dDgiIiIiIiIiYkdKdonbsZQUcXzVHIze/niGdHR0OCIiIiIiIiJiRy6T7Cot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tA6fTn3I2bD0bN3kf9OkuX5uFBE5n8EAEX7QOVCJrobWzge6NFOiS9xDsKftuhHuq0SXiIg4D5dMdknjU5C+Ab/YoQD4dR1MYebmym0ezUOxlpVQUXgak28QxUfS8YrojsFgwL/bUAoyUgDI3fYNvjEDwaDTXkRERERERMRd6Vu/uISKghxM3raVTo1eflQU5FRu8+08kB0PxXDg3QcIHnr3BeueWP0+wUMn2Dt0EREREREREbEjJbvEJZh8AqkozAXAUpSHyScQgIrCXHK++zdd380g8tn/cPSTaTXWLcjYhGdoZ4xNPB11CCIiIiIiIiJiB0p2iUvw6dSbvO1rAMjbkYR3VI9fthgwevpgMJkx+QZRUZBD0zYdKdq/DavVSt72Nfh07E3RgR/JTV1FxrTrKdyXytFPZzjuYERERERERESkwbjk0xil8fHp2IsTX39A2rOD8I+/jrKTR8ndupLgIXfiE92P3U8PAEsFofe+idGjCUFX30baMwNp0jyU8MkfYvRoQvNhdwOQPnU4bW5+3rEHJCIiIiIiIiINQskucRnt73+7ymvvDnEAhNz6J0Ju/VOVbc2H/47mw39X4346vbC6QeITEREREREREcfTNEYREREREREREXEbSnaJiIiIiIiIiIjbULJLRERERERERETchtbscjID33iIsoJiNjw/19GhVHNH5nxW3PAnTv64r0HbifKHOQMatIla2xYRERH3l5iYyD333ENYWBhhYWHMmzevyvb58+fTpk0bhg8fzqBBg9i6dSu7d++mXbt2VeodPHiQu+66i9LSUt555x26d+/Oa6+9xquvvsoDDzzAlClTAHjooYd4+eWX8fHxsdsxioiINFZKdjWg1v27EPf4zQTHdgDgxLa9pP7tU44l73BwZDZxj99McPdIvr7rxUuq/3HUnQ0ckY2vB8QF26UpERERacQmTpzIlClTePTRR0lOTqZfv36V25YtW8aiRYsA+Oyzz3jmmWdq3MesWbN44403CAkJ4f777+ff//4348ePJy4uju+++66y3siRI1m0aBG/+13ND9ARERGR+qNpjA2k3fAeXLNgCgdXb+bTX93Hp7+6j4OrN3PNwim0G/arGt9jMNXf/w6D2VRv+xIRERFxZ127duXw4cOVr0+ePImnpycGgwGA1q1bX/C9mZmZdO/enRYtWlBQUABAy5Yt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0CFefPFFPv/88yp116xZw5///Od6OirnU5d+fuaZZy6rrVGjRrFy5UquueYaWrRoQcuWLa80bJfUkOc0VD1XL9TXFzrPRURE5Moo2SUiIiKXbOLEiUyZMqVaeceOHVmyZAkAnTt3JjExsVqdjRs3snDhQkaOHElSUhI333xzle29e/eutv2OO+5g9uzZVRZb37t3L+3atauc+nUhWVlZDBgw4AqO0vHq0s+Xy2QyMXv2bKxWKxMmTKBfv36Aa/ff5WjIc/r8c7Wmvi4pKeHuu++udp43lv4XERFpCJrGKCIiInXWvXt30tLSaq3Tq1cvSkpKGDRoEN27d6dVq1YcO3as8ql0529fvnw5O3fu5L777iMhIaFyPaWapjAOHz6crVu3Mnz4cH788UcAMjMz6dq1awMcreNcSj9D9f44t5/P356UlERCQgLDhg3jpptuwtvbG3DP/rsc9XFOn3+uHjhwoFpfL1iwoMbzvLH3v4iISF0YrHrMywVlp+xmxejqv/TJlRmxdDqtel/l6DBEROQCev4yg2rTqCt7//Tp07nllltqfXqdvezatYulS5de9pQ+e3CFfnbm/rscrtDXNXGX/hcREamL9evXM3DgQNatW3fZo501jVFERETqRU1TwRwlJiaGmJgYR4fRIOzRz+7cf5fDUee0+l9ERKRuNI1RRERERERERETchpJdIiIiIiIiIiLiNpTsEhERERERERERt6E1u8Tp5JdBZq5j2o7yB18Px7QtIiIiIiIiInWnZJc4ncxcmLTeMW3PGQBxwY5pW0RERERERETqTtMYRURERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNvQAvXiFtKeT6BgdzIGswcGkxnPtlcRMn4G/t2HOTo0EREREREREbEjjewStxEyfgbxi/KJnZeNT3Q/9sy8gYqC044OS0RERERERETsSMkucTtGj6Y0v2YiluJ8io9mOjocEREREREREbEjJbvE7VhKiji+ag5Gb388Qzo6OhwRERERERERsSOXSXaVlpYydepUQkND8fLyYujQoaSkpGAwGFi6dKnd4rgjc36VP3cd+IRRX79qt/blwo4smErq7YFsvzecwn0/EDXlC0ze/o4OS0TE6RWXw3+zzr6e8QPsOOW4eNxVuQVWHzn7euoWSPkZrFbHxeSO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O3akZ8+eZGRkMG/ePCKRSLXtt4KrOo9piIZZubm5ALzxxhv079+ft99+m+TkZBYtWsRLL71E3759ycrK4oMPPmDz5s0e0zomRzpXeeaZZw4Z7h7J2LFjueWWWwBo0KABX3zxxbEXKykuGHYF3NNPP004HKZNmzb06tXrsO2aNWtGYmIiF110EUuWLCmzbfz48SxdupQ5c+YwduxYtm/fzj//+U/y8vJ4+eWXGTduXPXuhCRJVeCrPQc+/PBDTjnllArv8/777zN48GAABg0axAcffFBme3JyMgDFxcWcfPLJnHzyydSpUweI9ig4uBfCnDlzOOOMM0p7GXTs2JHFixcf+47puFUdxzRE50q68sorAUhLSyud52jnzp00adKE1atXc9pppwGQkZHBnDlzAI9pHb3KnKvMnTuXrl27Uq9evaN67D/96U+kpaXRr1+/KqhUUrwx7Aq4/b/8/eIXvyizPj09nfz8fAB2795NcXExEP1VJS0trUzbevXqUb9+fRo3bsyuXbsIhUKccMIJJCUlkZKSwtatWwHIz8+v8JdESZJi6as9B/Ly8kqHuhzO1q1bady4MQCNGjUq/cw72KRJk8jIyKBp06alQ2nefPNNOnXqVObkbMqUKVx88cWly/aI1rGqjmO6pKSE119/nW9+85tA9DvjrFmzyMjIIBQKkZqaSpcuXXj77beJRCLMmjWLbdu2AR7TOnqVOVdZtGgRb775JhdccAG5ubk8+OCDR3zc7Oxspk6dWuZH+d27d9O0adOqLF9SLWbYdZxKSUlh9+7dAKxatYrevXvTv39/mjZtyplnnsnGjRtL52C49tpr6du3L4MHD+ZHP/oRjRo14uyzz6Zfv35cccUV3HXXXUB0DokLL7wwZvskSdKhVKbnwJIlS0rn1dr/98tf/pKmTZuyfft2AHbs2HHIE6WrrrqKZcuWsWHDBhYuXMi6det4+OGHy82DOWPGjNIeNdKxqM5j+qWXXmLYsGGly8899xxXXHEFS5cupUWLFsyePZthw4axefNmzjvvPE488URatmxZXbuq49TB5yrXXXcdM2bMYNq0afTq1YsHHngAgDvvvBOIDrUdOXIkr732WulQx/vuu4/8/HwGDx7M7bffDsDMmTMPeeV5ScGUdOQmilf7v9gczrBhw5g+fTpDhgwp14W9devW3H333QDccMMNZS7l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", "text/plain": [ "
" ] @@ -776,10 +776,10 @@ "execution_count": 18, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:51.796158Z", - "iopub.status.busy": "2024-08-06T20:19:51.795776Z", - "iopub.status.idle": "2024-08-06T20:19:52.061962Z", - "shell.execute_reply": "2024-08-06T20:19:52.061284Z" + "iopub.execute_input": "2024-08-06T20:24:56.960807Z", + "iopub.status.busy": "2024-08-06T20:24:56.960436Z", + "iopub.status.idle": "2024-08-06T20:24:57.222242Z", + "shell.execute_reply": "2024-08-06T20:24:57.221590Z" } }, "outputs": [ diff --git a/dev/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb b/dev/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb index a79d24165..c595801cd 100644 --- a/dev/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb +++ b/dev/.doctrees/nbsphinx/explanations/state-vectors-and-gates.ipynb @@ -26,10 +26,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:54.687197Z", - "iopub.status.busy": "2024-08-06T20:19:54.686994Z", - "iopub.status.idle": "2024-08-06T20:19:55.405142Z", - "shell.execute_reply": "2024-08-06T20:19:55.404502Z" + "iopub.execute_input": "2024-08-06T20:25:00.008699Z", + "iopub.status.busy": "2024-08-06T20:25:00.008503Z", + "iopub.status.idle": "2024-08-06T20:25:00.743888Z", + "shell.execute_reply": "2024-08-06T20:25:00.743249Z" } }, "outputs": [ @@ -74,10 +74,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.407935Z", - "iopub.status.busy": "2024-08-06T20:19:55.407471Z", - "iopub.status.idle": "2024-08-06T20:19:55.414290Z", - "shell.execute_reply": "2024-08-06T20:19:55.413820Z" + "iopub.execute_input": "2024-08-06T20:25:00.746541Z", + "iopub.status.busy": "2024-08-06T20:25:00.746082Z", + "iopub.status.idle": "2024-08-06T20:25:00.753182Z", + "shell.execute_reply": "2024-08-06T20:25:00.752676Z" } }, "outputs": [ @@ -120,10 +120,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.416776Z", - "iopub.status.busy": "2024-08-06T20:19:55.416301Z", - "iopub.status.idle": "2024-08-06T20:19:55.420840Z", - "shell.execute_reply": "2024-08-06T20:19:55.420310Z" + "iopub.execute_input": "2024-08-06T20:25:00.755866Z", + "iopub.status.busy": "2024-08-06T20:25:00.755403Z", + "iopub.status.idle": "2024-08-06T20:25:00.759929Z", + "shell.execute_reply": "2024-08-06T20:25:00.759371Z" } }, "outputs": [ @@ -157,10 +157,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.423075Z", - "iopub.status.busy": "2024-08-06T20:19:55.422714Z", - "iopub.status.idle": "2024-08-06T20:19:55.426715Z", - "shell.execute_reply": "2024-08-06T20:19:55.426123Z" + "iopub.execute_input": "2024-08-06T20:25:00.762383Z", + "iopub.status.busy": "2024-08-06T20:25:00.761993Z", + "iopub.status.idle": "2024-08-06T20:25:00.766341Z", + "shell.execute_reply": "2024-08-06T20:25:00.765755Z" } }, "outputs": [ @@ -199,10 +199,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.429120Z", - "iopub.status.busy": "2024-08-06T20:19:55.428758Z", - "iopub.status.idle": "2024-08-06T20:19:55.434393Z", - "shell.execute_reply": "2024-08-06T20:19:55.433917Z" + "iopub.execute_input": "2024-08-06T20:25:00.768797Z", + "iopub.status.busy": "2024-08-06T20:25:00.768460Z", + "iopub.status.idle": "2024-08-06T20:25:00.774927Z", + "shell.execute_reply": "2024-08-06T20:25:00.774333Z" } }, "outputs": [ @@ -245,10 +245,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.436453Z", - "iopub.status.busy": "2024-08-06T20:19:55.436261Z", - "iopub.status.idle": "2024-08-06T20:19:55.441949Z", - "shell.execute_reply": "2024-08-06T20:19:55.441439Z" + "iopub.execute_input": "2024-08-06T20:25:00.777387Z", + "iopub.status.busy": "2024-08-06T20:25:00.776944Z", + "iopub.status.idle": "2024-08-06T20:25:00.782780Z", + "shell.execute_reply": "2024-08-06T20:25:00.782274Z" } }, "outputs": [ @@ -293,10 +293,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.444250Z", - "iopub.status.busy": "2024-08-06T20:19:55.443899Z", - "iopub.status.idle": "2024-08-06T20:19:55.448729Z", - "shell.execute_reply": "2024-08-06T20:19:55.448248Z" + "iopub.execute_input": "2024-08-06T20:25:00.785105Z", + "iopub.status.busy": "2024-08-06T20:25:00.784757Z", + "iopub.status.idle": "2024-08-06T20:25:00.789648Z", + "shell.execute_reply": "2024-08-06T20:25:00.789148Z" } }, "outputs": [ diff --git a/dev/.doctrees/nbsphinx/explanations_qiskit-gate-decompositions_34_0.png b/dev/.doctrees/nbsphinx/explanations_qiskit-gate-decompositions_34_0.png index 7d4daaa9e..a689d60d1 100644 Binary files a/dev/.doctrees/nbsphinx/explanations_qiskit-gate-decompositions_34_0.png and b/dev/.doctrees/nbsphinx/explanations_qiskit-gate-decompositions_34_0.png differ diff --git a/dev/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb index 91769e49c..2e71f6fd0 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/entanglement-forging.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:57.295117Z", - "iopub.status.busy": "2024-08-06T20:19:57.294569Z", - "iopub.status.idle": "2024-08-06T20:19:58.185594Z", - "shell.execute_reply": "2024-08-06T20:19:58.184965Z" + "iopub.execute_input": "2024-08-06T20:25:02.462219Z", + "iopub.status.busy": "2024-08-06T20:25:02.461737Z", + "iopub.status.idle": "2024-08-06T20:25:03.475336Z", + "shell.execute_reply": "2024-08-06T20:25:03.474729Z" } }, "outputs": [ @@ -36,7 +36,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Parsing /tmp/tmpb0u0jmsu\n", + "Parsing /tmp/tmpx8kyiqnb\n", "converged SCF energy = -75.6787887956314\n" ] }, @@ -123,10 +123,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:58.189915Z", - "iopub.status.busy": "2024-08-06T20:19:58.188796Z", - "iopub.status.idle": "2024-08-06T20:19:58.195080Z", - "shell.execute_reply": "2024-08-06T20:19:58.194494Z" + "iopub.execute_input": "2024-08-06T20:25:03.478430Z", + "iopub.status.busy": "2024-08-06T20:25:03.478068Z", + "iopub.status.idle": "2024-08-06T20:25:03.482929Z", + "shell.execute_reply": "2024-08-06T20:25:03.482337Z" } }, "outputs": [], @@ -166,10 +166,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:58.198884Z", - "iopub.status.busy": "2024-08-06T20:19:58.197916Z", - "iopub.status.idle": "2024-08-06T20:19:58.202492Z", - "shell.execute_reply": "2024-08-06T20:19:58.201936Z" + "iopub.execute_input": "2024-08-06T20:25:03.485524Z", + "iopub.status.busy": "2024-08-06T20:25:03.485169Z", + "iopub.status.idle": "2024-08-06T20:25:03.488480Z", + "shell.execute_reply": "2024-08-06T20:25:03.487912Z" } }, "outputs": [], @@ -198,10 +198,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:58.206316Z", - "iopub.status.busy": "2024-08-06T20:19:58.205286Z", - "iopub.status.idle": "2024-08-06T20:19:58.345356Z", - "shell.execute_reply": "2024-08-06T20:19:58.344864Z" + "iopub.execute_input": "2024-08-06T20:25:03.490989Z", + "iopub.status.busy": "2024-08-06T20:25:03.490621Z", + "iopub.status.idle": "2024-08-06T20:25:03.620224Z", + "shell.execute_reply": "2024-08-06T20:25:03.619573Z" } }, "outputs": [ @@ -236,10 +236,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:58.348339Z", - "iopub.status.busy": "2024-08-06T20:19:58.347728Z", - "iopub.status.idle": "2024-08-06T20:20:06.417446Z", - "shell.execute_reply": "2024-08-06T20:20:06.416862Z" + "iopub.execute_input": "2024-08-06T20:25:03.622823Z", + "iopub.status.busy": "2024-08-06T20:25:03.622435Z", + "iopub.status.idle": "2024-08-06T20:25:11.578877Z", + "shell.execute_reply": "2024-08-06T20:25:11.578173Z" } }, "outputs": [ @@ -251,10 +251,10 @@ " message: STOP: TOTAL NO. of f AND g EVALUATIONS EXCEEDS LIMIT\n", " success: False\n", " status: 1\n", - " fun: -75.6838156085223\n", - " x: [-1.603e-01 6.414e-03 ... 5.747e-02 -1.005e-01]\n", + " fun: -75.68381564539439\n", + " x: [-1.603e-01 6.417e-03 ... 5.748e-02 -1.005e-01]\n", " nit: 3\n", - " jac: [ 2.132e-04 1.080e-04 ... -4.744e-03 7.431e-03]\n", + " jac: [ 2.103e-04 1.066e-04 ... -4.751e-03 7.431e-03]\n", " nfev: 112\n", " njev: 7\n", " hess_inv: <15x15 LbfgsInvHessProduct with dtype=float64>\n" diff --git a/dev/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb index ef9345df2..e20260b88 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/fermion-operator.ipynb @@ -29,10 +29,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:07.941851Z", - "iopub.status.busy": "2024-08-06T20:20:07.941620Z", - "iopub.status.idle": "2024-08-06T20:20:08.661709Z", - "shell.execute_reply": "2024-08-06T20:20:08.661052Z" + "iopub.execute_input": "2024-08-06T20:25:13.320586Z", + "iopub.status.busy": "2024-08-06T20:25:13.320380Z", + "iopub.status.idle": "2024-08-06T20:25:14.067462Z", + "shell.execute_reply": "2024-08-06T20:25:14.066825Z" } }, "outputs": [ @@ -76,10 +76,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.664426Z", - "iopub.status.busy": "2024-08-06T20:20:08.663960Z", - "iopub.status.idle": "2024-08-06T20:20:08.668044Z", - "shell.execute_reply": "2024-08-06T20:20:08.667469Z" + "iopub.execute_input": "2024-08-06T20:25:14.070147Z", + "iopub.status.busy": "2024-08-06T20:25:14.069664Z", + "iopub.status.idle": "2024-08-06T20:25:14.073747Z", + "shell.execute_reply": "2024-08-06T20:25:14.073222Z" } }, "outputs": [ @@ -110,10 +110,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.670707Z", - "iopub.status.busy": "2024-08-06T20:20:08.670147Z", - "iopub.status.idle": "2024-08-06T20:20:08.674594Z", - "shell.execute_reply": "2024-08-06T20:20:08.674014Z" + "iopub.execute_input": "2024-08-06T20:25:14.076104Z", + "iopub.status.busy": "2024-08-06T20:25:14.075743Z", + "iopub.status.idle": "2024-08-06T20:25:14.080135Z", + "shell.execute_reply": "2024-08-06T20:25:14.079561Z" } }, "outputs": [ @@ -121,17 +121,17 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (des_a(3), des_b(3)): 0.0625,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", + " (cre_a(3), des_a(0)): -0.5,\n", + " (cre_b(1), des_b(5), cre_a(4)): 2+2j,\n", " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n", + " (cre_b(2)): 0-0.25j,\n", " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,\n", " (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,\n", - " (cre_a(3), des_a(0)): -0.5,\n", - " (cre_b(2)): 0-0.25j,\n", + " (des_a(3), des_b(3)): 0.0625,\n", " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n", " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", - " (cre_a(0), des_a(3)): 1,\n", - " (cre_b(1), des_b(5), cre_a(4)): 2+2j\n", + " (cre_a(0), des_a(3)): 1\n", "})" ] }, @@ -170,10 +170,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.676869Z", - "iopub.status.busy": "2024-08-06T20:20:08.676533Z", - "iopub.status.idle": "2024-08-06T20:20:08.680517Z", - "shell.execute_reply": "2024-08-06T20:20:08.679934Z" + "iopub.execute_input": "2024-08-06T20:25:14.082402Z", + "iopub.status.busy": "2024-08-06T20:25:14.082075Z", + "iopub.status.idle": "2024-08-06T20:25:14.085920Z", + "shell.execute_reply": "2024-08-06T20:25:14.085452Z" } }, "outputs": [ @@ -181,17 +181,17 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (des_a(3), des_b(3)): 0-1.25j,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", + " (cre_a(3), des_a(0)): 0+3j,\n", + " (cre_b(1), des_b(5), cre_a(4)): 12-12j,\n", " (cre_a(3), des_a(0), cre_b(2)): -1,\n", + " (cre_b(2)): -5,\n", " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,\n", " (cre_a(0), des_a(3), cre_b(2)): 2,\n", - " (cre_a(3), des_a(0)): 0+3j,\n", - " (cre_b(2)): -5,\n", + " (des_a(3), des_b(3)): 0-1.25j,\n", " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n", " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", - " (cre_a(0), des_a(3)): 0-6j,\n", - " (cre_b(1), des_b(5), cre_a(4)): 12-12j\n", + " (cre_a(0), des_a(3)): 0-6j\n", "})" ] }, @@ -220,10 +220,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.682858Z", - "iopub.status.busy": "2024-08-06T20:20:08.682490Z", - "iopub.status.idle": "2024-08-06T20:20:08.686168Z", - "shell.execute_reply": "2024-08-06T20:20:08.685696Z" + "iopub.execute_input": "2024-08-06T20:25:14.088055Z", + "iopub.status.busy": "2024-08-06T20:25:14.087867Z", + "iopub.status.idle": "2024-08-06T20:25:14.091687Z", + "shell.execute_reply": "2024-08-06T20:25:14.091150Z" } }, "outputs": [ @@ -231,16 +231,16 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_a(3), des_a(0)): 0+3j,\n", + " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", + " (des_b(3), des_a(3)): 0+1.25j,\n", " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n", - " (cre_a(0), des_a(3)): 0-6j,\n", - " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n", - " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", " (cre_b(2), cre_a(3), des_a(0)): -1,\n", + " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", " (cre_b(2)): -5,\n", - " (des_b(3), des_a(3)): 0+1.25j,\n", - " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", - " (cre_b(2), cre_a(0), des_a(3)): 2\n", + " (cre_a(3), des_a(0)): 0+3j,\n", + " (cre_b(2), cre_a(0), des_a(3)): 2,\n", + " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n", + " (cre_a(0), des_a(3)): 0-6j\n", "})" ] }, @@ -265,10 +265,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.688423Z", - "iopub.status.busy": "2024-08-06T20:20:08.688065Z", - "iopub.status.idle": "2024-08-06T20:20:08.691204Z", - "shell.execute_reply": "2024-08-06T20:20:08.690607Z" + "iopub.execute_input": "2024-08-06T20:25:14.093979Z", + "iopub.status.busy": "2024-08-06T20:25:14.093641Z", + "iopub.status.idle": "2024-08-06T20:25:14.096761Z", + "shell.execute_reply": "2024-08-06T20:25:14.096218Z" } }, "outputs": [ @@ -298,10 +298,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.693554Z", - "iopub.status.busy": "2024-08-06T20:20:08.693182Z", - "iopub.status.idle": "2024-08-06T20:20:08.697417Z", - "shell.execute_reply": "2024-08-06T20:20:08.696827Z" + "iopub.execute_input": "2024-08-06T20:25:14.099163Z", + "iopub.status.busy": "2024-08-06T20:25:14.098709Z", + "iopub.status.idle": "2024-08-06T20:25:14.103068Z", + "shell.execute_reply": "2024-08-06T20:25:14.102547Z" } }, "outputs": [ @@ -341,21 +341,21 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.699810Z", - "iopub.status.busy": "2024-08-06T20:20:08.699462Z", - "iopub.status.idle": "2024-08-06T20:20:08.705475Z", - "shell.execute_reply": "2024-08-06T20:20:08.704891Z" + "iopub.execute_input": "2024-08-06T20:25:14.105497Z", + "iopub.status.busy": "2024-08-06T20:25:14.105009Z", + "iopub.status.idle": "2024-08-06T20:25:14.111149Z", + "shell.execute_reply": "2024-08-06T20:25:14.110503Z" } }, "outputs": [ { "data": { "text/plain": [ - "array([0. +0.j , 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " 0.11769439-0.07358983j, 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " 0. +0.j ])" + "array([ 0. +0.j , 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " -0.00088962+0.08340145j, 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " 0. +0.j ])" ] }, "execution_count": 8, @@ -380,10 +380,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.707913Z", - "iopub.status.busy": "2024-08-06T20:20:08.707546Z", - "iopub.status.idle": "2024-08-06T20:20:08.719204Z", - "shell.execute_reply": "2024-08-06T20:20:08.718639Z" + "iopub.execute_input": "2024-08-06T20:25:14.113415Z", + "iopub.status.busy": "2024-08-06T20:25:14.113062Z", + "iopub.status.idle": "2024-08-06T20:25:14.123877Z", + "shell.execute_reply": "2024-08-06T20:25:14.123363Z" } }, "outputs": [ diff --git a/dev/.doctrees/nbsphinx/how-to-guides/lucj.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/lucj.ipynb index e0fd284e6..044512cc9 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/lucj.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/lucj.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:10.429132Z", - "iopub.status.busy": "2024-08-06T20:20:10.428928Z", - "iopub.status.idle": "2024-08-06T20:20:11.425293Z", - "shell.execute_reply": "2024-08-06T20:20:11.424697Z" + "iopub.execute_input": "2024-08-06T20:25:15.834966Z", + "iopub.status.busy": "2024-08-06T20:25:15.834769Z", + "iopub.status.idle": "2024-08-06T20:25:16.835062Z", + "shell.execute_reply": "2024-08-06T20:25:16.834392Z" } }, "outputs": [ @@ -27,15 +27,15 @@ "name": "stdout", "output_type": "stream", "text": [ - "converged SCF energy = -77.8266321248745\n" + "converged SCF energy = -77.8266321248744\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Parsing /tmp/tmp_ubiqe0e\n", - "converged SCF energy = -77.8266321248744\n" + "Parsing /tmp/tmpjm80hdau\n", + "converged SCF energy = -77.8266321248745\n" ] }, { @@ -121,10 +121,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:11.428777Z", - "iopub.status.busy": "2024-08-06T20:20:11.428295Z", - "iopub.status.idle": "2024-08-06T20:20:11.498481Z", - "shell.execute_reply": "2024-08-06T20:20:11.497936Z" + "iopub.execute_input": "2024-08-06T20:25:16.838384Z", + "iopub.status.busy": "2024-08-06T20:25:16.837864Z", + "iopub.status.idle": "2024-08-06T20:25:16.909058Z", + "shell.execute_reply": "2024-08-06T20:25:16.908418Z" } }, "outputs": [ @@ -132,14 +132,14 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(CCSD) = -77.87421536374032 E_corr = -0.04758323886584889\n" + "E(CCSD) = -77.87421536374028 E_corr = -0.04758323886583945\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialization: -77.87160024816285\n" + "Energy at initialization: -77.87160024816274\n" ] } ], @@ -180,10 +180,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:11.501362Z", - "iopub.status.busy": "2024-08-06T20:20:11.501086Z", - "iopub.status.idle": "2024-08-06T20:21:21.175341Z", - "shell.execute_reply": "2024-08-06T20:21:21.174694Z" + "iopub.execute_input": "2024-08-06T20:25:16.912321Z", + "iopub.status.busy": "2024-08-06T20:25:16.912065Z", + "iopub.status.idle": "2024-08-06T20:26:30.544833Z", + "shell.execute_reply": "2024-08-06T20:26:30.544231Z" } }, "outputs": [ @@ -195,10 +195,10 @@ " message: STOP: TOTAL NO. of ITERATIONS REACHED LIMIT\n", " success: False\n", " status: 1\n", - " fun: -77.87387390831138\n", - " x: [-1.152e+00 2.553e-04 ... 2.748e-04 1.287e-01]\n", + " fun: -77.87387392584009\n", + " x: [-1.152e+00 7.030e-04 ... 2.207e-04 1.287e-01]\n", " nit: 10\n", - " jac: [ 1.705e-05 7.105e-06 ... 7.105e-06 3.553e-05]\n", + " jac: [ 7.105e-06 -2.416e-05 ... 1.279e-05 2.132e-05]\n", " nfev: 949\n", " njev: 13\n", " hess_inv: <72x72 LbfgsInvHessProduct with dtype=float64>\n" @@ -242,10 +242,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:21:21.182914Z", - "iopub.status.busy": "2024-08-06T20:21:21.181929Z", - "iopub.status.idle": "2024-08-06T20:21:44.913264Z", - "shell.execute_reply": "2024-08-06T20:21:44.912553Z" + "iopub.execute_input": "2024-08-06T20:26:30.547969Z", + "iopub.status.busy": "2024-08-06T20:26:30.547611Z", + "iopub.status.idle": "2024-08-06T20:26:55.003253Z", + "shell.execute_reply": "2024-08-06T20:26:55.002543Z" } }, "outputs": [ @@ -257,10 +257,10 @@ " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", " success: True\n", " status: 0\n", - " fun: -77.87363426644954\n", - " x: [-1.152e+00 1.641e-05 ... 3.519e-02 2.561e-01]\n", + " fun: -77.87363426645267\n", + " x: [-1.152e+00 8.332e-05 ... 3.520e-02 2.561e-01]\n", " nit: 5\n", - " jac: [ 4.263e-06 -3.411e-05 ... 5.684e-06 -4.263e-06]\n", + " jac: [ 1.279e-05 7.105e-06 ... 1.421e-06 -1.421e-06]\n", " nfev: 329\n", " njev: 7\n", " hess_inv: <46x46 LbfgsInvHessProduct with dtype=float64>\n" @@ -305,10 +305,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:21:44.916475Z", - "iopub.status.busy": "2024-08-06T20:21:44.916197Z", - "iopub.status.idle": "2024-08-06T20:22:00.857131Z", - "shell.execute_reply": "2024-08-06T20:22:00.856469Z" + "iopub.execute_input": "2024-08-06T20:26:55.006480Z", + "iopub.status.busy": "2024-08-06T20:26:55.006197Z", + "iopub.status.idle": "2024-08-06T20:27:08.491098Z", + "shell.execute_reply": "2024-08-06T20:27:08.490361Z" } }, "outputs": [ @@ -319,29 +319,29 @@ "Number of parameters: 46\n", " message: Convergence: Relative reduction of objective function <= ftol.\n", " success: True\n", - " fun: -77.87363431942123\n", - " x: [-1.150e+00 -1.196e-03 ... 3.399e-02 2.567e-01]\n", + " fun: -77.8736343245343\n", + " x: [-1.152e+00 -2.667e-04 ... 3.475e-02 2.560e-01]\n", " nit: 3\n", - " jac: [-4.559e-06 -5.093e-06 ... -5.838e-07 -2.674e-06]\n", - " nfev: 562\n", + " jac: [ 1.780e-07 -4.484e-07 ... -1.395e-07 -1.610e-07]\n", + " nfev: 523\n", " njev: 4\n", - " nlinop: 378\n", + " nlinop: 339\n", "\n", "Iteration 1\n", - " Energy: -77.87362316910543\n", - " Norm of gradient: 0.0026606424118499226\n", - " Regularization hyperparameter: 0.0007328912165354164\n", - " Variation hyperparameter: 0.9709515153370365\n", + " Energy: -77.87363082741813\n", + " Norm of gradient: 0.0014334855507404987\n", + " Regularization hyperparameter: 0.0016719665060125194\n", + " Variation hyperparameter: 0.9930289110134369\n", "Iteration 2\n", - " Energy: -77.87363391825906\n", - " Norm of gradient: 0.0002174860872736592\n", - " Regularization hyperparameter: 0.008343161337227666\n", - " Variation hyperparameter: 0.9715440087034412\n", + " Energy: -77.87363430913514\n", + " Norm of gradient: 5.823970652155262e-05\n", + " Regularization hyperparameter: 0.0033363610926438973\n", + " Variation hyperparameter: 0.9931197219175946\n", "Iteration 3\n", - " Energy: -77.87363431942123\n", - " Norm of gradient: 5.603513968594312e-05\n", - " Regularization hyperparameter: 0.008343165427075229\n", - " Variation hyperparameter: 0.9715440096318498\n" + " Energy: -77.8736343245343\n", + " Norm of gradient: 7.627953183069461e-06\n", + " Regularization hyperparameter: 0.0035195360534473106\n", + " Variation hyperparameter: 0.9931294330101719\n" ] } ], diff --git a/dev/.doctrees/nbsphinx/how-to-guides/qiskit-circuits.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/qiskit-circuits.ipynb index 7216ea390..2c56157eb 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/qiskit-circuits.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/qiskit-circuits.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:02.479953Z", - "iopub.status.busy": "2024-08-06T20:22:02.479759Z", - "iopub.status.idle": "2024-08-06T20:22:03.167425Z", - "shell.execute_reply": "2024-08-06T20:22:03.166765Z" + "iopub.execute_input": "2024-08-06T20:27:10.166010Z", + "iopub.status.busy": "2024-08-06T20:27:10.165797Z", + "iopub.status.idle": "2024-08-06T20:27:10.856853Z", + "shell.execute_reply": "2024-08-06T20:27:10.856315Z" } }, "outputs": [], @@ -54,10 +54,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.170594Z", - "iopub.status.busy": "2024-08-06T20:22:03.169996Z", - "iopub.status.idle": "2024-08-06T20:22:03.746537Z", - "shell.execute_reply": "2024-08-06T20:22:03.745904Z" + "iopub.execute_input": "2024-08-06T20:27:10.860030Z", + "iopub.status.busy": "2024-08-06T20:27:10.859381Z", + "iopub.status.idle": "2024-08-06T20:27:11.438803Z", + "shell.execute_reply": "2024-08-06T20:27:11.438218Z" } }, "outputs": [ @@ -103,10 +103,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.749572Z", - "iopub.status.busy": "2024-08-06T20:22:03.748782Z", - "iopub.status.idle": "2024-08-06T20:22:03.958127Z", - "shell.execute_reply": "2024-08-06T20:22:03.957411Z" + "iopub.execute_input": "2024-08-06T20:27:11.441581Z", + "iopub.status.busy": "2024-08-06T20:27:11.441059Z", + "iopub.status.idle": "2024-08-06T20:27:11.648367Z", + "shell.execute_reply": "2024-08-06T20:27:11.647846Z" } }, "outputs": [ @@ -160,17 +160,17 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.960871Z", - "iopub.status.busy": "2024-08-06T20:22:03.960394Z", - "iopub.status.idle": "2024-08-06T20:22:03.964840Z", - "shell.execute_reply": "2024-08-06T20:22:03.964290Z" + "iopub.execute_input": "2024-08-06T20:27:11.650974Z", + "iopub.status.busy": "2024-08-06T20:27:11.650563Z", + "iopub.status.idle": "2024-08-06T20:27:11.655041Z", + "shell.execute_reply": "2024-08-06T20:27:11.654541Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 4, @@ -195,17 +195,17 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.967153Z", - "iopub.status.busy": "2024-08-06T20:22:03.966957Z", - "iopub.status.idle": "2024-08-06T20:22:03.972342Z", - "shell.execute_reply": "2024-08-06T20:22:03.971814Z" + "iopub.execute_input": "2024-08-06T20:27:11.657339Z", + "iopub.status.busy": "2024-08-06T20:27:11.656979Z", + "iopub.status.idle": "2024-08-06T20:27:11.661774Z", + "shell.execute_reply": "2024-08-06T20:27:11.661222Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 5, @@ -242,17 +242,17 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.974829Z", - "iopub.status.busy": "2024-08-06T20:22:03.974430Z", - "iopub.status.idle": "2024-08-06T20:22:03.979505Z", - "shell.execute_reply": "2024-08-06T20:22:03.978857Z" + "iopub.execute_input": "2024-08-06T20:27:11.664228Z", + "iopub.status.busy": "2024-08-06T20:27:11.663867Z", + "iopub.status.idle": "2024-08-06T20:27:11.668393Z", + "shell.execute_reply": "2024-08-06T20:27:11.667819Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 6, @@ -279,17 +279,17 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.982031Z", - "iopub.status.busy": "2024-08-06T20:22:03.981628Z", - "iopub.status.idle": "2024-08-06T20:22:03.986573Z", - "shell.execute_reply": "2024-08-06T20:22:03.985898Z" + "iopub.execute_input": "2024-08-06T20:27:11.670756Z", + "iopub.status.busy": "2024-08-06T20:27:11.670373Z", + "iopub.status.idle": "2024-08-06T20:27:11.674772Z", + "shell.execute_reply": "2024-08-06T20:27:11.674175Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 7, @@ -315,17 +315,17 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.989221Z", - "iopub.status.busy": "2024-08-06T20:22:03.988735Z", - "iopub.status.idle": "2024-08-06T20:22:03.993846Z", - "shell.execute_reply": "2024-08-06T20:22:03.993235Z" + "iopub.execute_input": "2024-08-06T20:27:11.677244Z", + "iopub.status.busy": "2024-08-06T20:27:11.676810Z", + "iopub.status.idle": "2024-08-06T20:27:11.681161Z", + "shell.execute_reply": "2024-08-06T20:27:11.680645Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 8, @@ -354,17 +354,17 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.996255Z", - "iopub.status.busy": "2024-08-06T20:22:03.995864Z", - "iopub.status.idle": "2024-08-06T20:22:04.001285Z", - "shell.execute_reply": "2024-08-06T20:22:04.000777Z" + "iopub.execute_input": "2024-08-06T20:27:11.683518Z", + "iopub.status.busy": "2024-08-06T20:27:11.683065Z", + "iopub.status.idle": "2024-08-06T20:27:11.688141Z", + "shell.execute_reply": "2024-08-06T20:27:11.687655Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 9, @@ -391,17 +391,17 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:04.003678Z", - "iopub.status.busy": "2024-08-06T20:22:04.003482Z", - "iopub.status.idle": "2024-08-06T20:22:04.009350Z", - "shell.execute_reply": "2024-08-06T20:22:04.008724Z" + "iopub.execute_input": "2024-08-06T20:27:11.690291Z", + "iopub.status.busy": "2024-08-06T20:27:11.690099Z", + "iopub.status.idle": "2024-08-06T20:27:11.695525Z", + "shell.execute_reply": "2024-08-06T20:27:11.694959Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 10, @@ -428,17 +428,17 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:04.012034Z", - "iopub.status.busy": "2024-08-06T20:22:04.011649Z", - "iopub.status.idle": "2024-08-06T20:22:04.017737Z", - "shell.execute_reply": "2024-08-06T20:22:04.017099Z" + "iopub.execute_input": "2024-08-06T20:27:11.697923Z", + "iopub.status.busy": "2024-08-06T20:27:11.697543Z", + "iopub.status.idle": "2024-08-06T20:27:11.703065Z", + "shell.execute_reply": "2024-08-06T20:27:11.702565Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 11, diff --git a/dev/.doctrees/nbsphinx/how-to-guides/qiskit-sampler.ipynb b/dev/.doctrees/nbsphinx/how-to-guides/qiskit-sampler.ipynb index c68e9bd37..3e2ab84e1 100644 --- a/dev/.doctrees/nbsphinx/how-to-guides/qiskit-sampler.ipynb +++ b/dev/.doctrees/nbsphinx/how-to-guides/qiskit-sampler.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:06.090044Z", - "iopub.status.busy": "2024-08-06T20:22:06.089852Z", - "iopub.status.idle": "2024-08-06T20:22:06.786028Z", - "shell.execute_reply": "2024-08-06T20:22:06.785482Z" + "iopub.execute_input": "2024-08-06T20:27:13.574965Z", + "iopub.status.busy": "2024-08-06T20:27:13.574764Z", + "iopub.status.idle": "2024-08-06T20:27:14.275140Z", + "shell.execute_reply": "2024-08-06T20:27:14.274554Z" } }, "outputs": [], @@ -71,10 +71,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:06.789087Z", - "iopub.status.busy": "2024-08-06T20:22:06.788631Z", - "iopub.status.idle": "2024-08-06T20:22:06.851446Z", - "shell.execute_reply": "2024-08-06T20:22:06.850903Z" + "iopub.execute_input": "2024-08-06T20:27:14.277819Z", + "iopub.status.busy": "2024-08-06T20:27:14.277559Z", + "iopub.status.idle": "2024-08-06T20:27:14.339994Z", + "shell.execute_reply": "2024-08-06T20:27:14.339485Z" } }, "outputs": [ @@ -154,10 +154,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:06.854084Z", - "iopub.status.busy": "2024-08-06T20:22:06.853716Z", - "iopub.status.idle": "2024-08-06T20:22:07.161809Z", - "shell.execute_reply": "2024-08-06T20:22:07.161235Z" + "iopub.execute_input": "2024-08-06T20:27:14.342595Z", + "iopub.status.busy": "2024-08-06T20:27:14.342156Z", + "iopub.status.idle": "2024-08-06T20:27:14.646583Z", + "shell.execute_reply": "2024-08-06T20:27:14.645980Z" } }, "outputs": [ @@ -174,7 +174,7 @@ "text": [ "norb = 14\n", "nelec = (3, 3)\n", - "E(CCSD) = -108.9630419334854 E_corr = -0.127805362711006\n" + "E(CCSD) = -108.9630419334854 E_corr = -0.1278053627110067\n" ] }, { @@ -269,10 +269,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:07.164403Z", - "iopub.status.busy": "2024-08-06T20:22:07.164035Z", - "iopub.status.idle": "2024-08-06T20:22:07.700393Z", - "shell.execute_reply": "2024-08-06T20:22:07.699781Z" + "iopub.execute_input": "2024-08-06T20:27:14.649130Z", + "iopub.status.busy": "2024-08-06T20:27:14.648769Z", + "iopub.status.idle": "2024-08-06T20:27:15.191228Z", + "shell.execute_reply": "2024-08-06T20:27:15.190583Z" } }, "outputs": [ @@ -287,7 +287,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "SCF energy = -75.3484557048462\n" + "SCF energy = -75.3484557066644\n" ] }, { @@ -305,7 +305,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(UCCSD) = -75.45619739165906 E_corr = -0.107741686812878\n" + "E(UCCSD) = -75.45619739132886 E_corr = -0.10774168466442\n" ] }, { diff --git a/dev/.doctrees/nbsphinx/tutorials/double-factorized-trotter.ipynb b/dev/.doctrees/nbsphinx/tutorials/double-factorized-trotter.ipynb index 8de0bc7d9..b86f4d858 100644 --- a/dev/.doctrees/nbsphinx/tutorials/double-factorized-trotter.ipynb +++ b/dev/.doctrees/nbsphinx/tutorials/double-factorized-trotter.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:09.257287Z", - "iopub.status.busy": "2024-08-06T20:22:09.257093Z", - "iopub.status.idle": "2024-08-06T20:22:10.085823Z", - "shell.execute_reply": "2024-08-06T20:22:10.085204Z" + "iopub.execute_input": "2024-08-06T20:27:16.750481Z", + "iopub.status.busy": "2024-08-06T20:27:16.750283Z", + "iopub.status.idle": "2024-08-06T20:27:17.600039Z", + "shell.execute_reply": "2024-08-06T20:27:17.599433Z" } }, "outputs": [ @@ -80,10 +80,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.089563Z", - "iopub.status.busy": "2024-08-06T20:22:10.088937Z", - "iopub.status.idle": "2024-08-06T20:22:10.093633Z", - "shell.execute_reply": "2024-08-06T20:22:10.093169Z" + "iopub.execute_input": "2024-08-06T20:27:17.604720Z", + "iopub.status.busy": "2024-08-06T20:27:17.603362Z", + "iopub.status.idle": "2024-08-06T20:27:17.608576Z", + "shell.execute_reply": "2024-08-06T20:27:17.608010Z" } }, "outputs": [], @@ -106,10 +106,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.096003Z", - "iopub.status.busy": "2024-08-06T20:22:10.095649Z", - "iopub.status.idle": "2024-08-06T20:22:10.100167Z", - "shell.execute_reply": "2024-08-06T20:22:10.099575Z" + "iopub.execute_input": "2024-08-06T20:27:17.611044Z", + "iopub.status.busy": "2024-08-06T20:27:17.610643Z", + "iopub.status.idle": "2024-08-06T20:27:17.615491Z", + "shell.execute_reply": "2024-08-06T20:27:17.614936Z" } }, "outputs": [ @@ -172,10 +172,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.102538Z", - "iopub.status.busy": "2024-08-06T20:22:10.102064Z", - "iopub.status.idle": "2024-08-06T20:22:10.106251Z", - "shell.execute_reply": "2024-08-06T20:22:10.105767Z" + "iopub.execute_input": "2024-08-06T20:27:17.617773Z", + "iopub.status.busy": "2024-08-06T20:27:17.617584Z", + "iopub.status.idle": "2024-08-06T20:27:17.621837Z", + "shell.execute_reply": "2024-08-06T20:27:17.621335Z" } }, "outputs": [ @@ -208,10 +208,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.108398Z", - "iopub.status.busy": "2024-08-06T20:22:10.108211Z", - "iopub.status.idle": "2024-08-06T20:22:10.112154Z", - "shell.execute_reply": "2024-08-06T20:22:10.111651Z" + "iopub.execute_input": "2024-08-06T20:27:17.624153Z", + "iopub.status.busy": "2024-08-06T20:27:17.623845Z", + "iopub.status.idle": "2024-08-06T20:27:17.627935Z", + "shell.execute_reply": "2024-08-06T20:27:17.627427Z" } }, "outputs": [ @@ -242,10 +242,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.114299Z", - "iopub.status.busy": "2024-08-06T20:22:10.114107Z", - "iopub.status.idle": "2024-08-06T20:22:10.132340Z", - "shell.execute_reply": "2024-08-06T20:22:10.131736Z" + "iopub.execute_input": "2024-08-06T20:27:17.630174Z", + "iopub.status.busy": "2024-08-06T20:27:17.629945Z", + "iopub.status.idle": "2024-08-06T20:27:17.648995Z", + "shell.execute_reply": "2024-08-06T20:27:17.648518Z" } }, "outputs": [ @@ -253,7 +253,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Maximum error in a tensor entry: 0.036685417309836654\n" + "Maximum error in a tensor entry: 0.03668541730983654\n" ] } ], @@ -302,10 +302,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.135004Z", - "iopub.status.busy": "2024-08-06T20:22:10.134542Z", - "iopub.status.idle": "2024-08-06T20:22:10.138718Z", - "shell.execute_reply": "2024-08-06T20:22:10.138178Z" + "iopub.execute_input": "2024-08-06T20:27:17.651324Z", + "iopub.status.busy": "2024-08-06T20:27:17.650973Z", + "iopub.status.idle": "2024-08-06T20:27:17.655237Z", + "shell.execute_reply": "2024-08-06T20:27:17.654630Z" } }, "outputs": [], @@ -360,10 +360,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.140955Z", - "iopub.status.busy": "2024-08-06T20:22:10.140609Z", - "iopub.status.idle": "2024-08-06T20:22:10.144255Z", - "shell.execute_reply": "2024-08-06T20:22:10.143665Z" + "iopub.execute_input": "2024-08-06T20:27:17.657402Z", + "iopub.status.busy": "2024-08-06T20:27:17.657213Z", + "iopub.status.idle": "2024-08-06T20:27:17.660556Z", + "shell.execute_reply": "2024-08-06T20:27:17.660089Z" } }, "outputs": [], @@ -400,10 +400,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.146415Z", - "iopub.status.busy": "2024-08-06T20:22:10.146225Z", - "iopub.status.idle": "2024-08-06T20:22:10.206038Z", - "shell.execute_reply": "2024-08-06T20:22:10.205467Z" + "iopub.execute_input": "2024-08-06T20:27:17.662713Z", + "iopub.status.busy": "2024-08-06T20:27:17.662509Z", + "iopub.status.idle": "2024-08-06T20:27:17.722411Z", + "shell.execute_reply": "2024-08-06T20:27:17.721831Z" } }, "outputs": [], @@ -439,10 +439,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.208861Z", - "iopub.status.busy": "2024-08-06T20:22:10.208263Z", - "iopub.status.idle": "2024-08-06T20:22:10.257514Z", - "shell.execute_reply": "2024-08-06T20:22:10.257029Z" + "iopub.execute_input": "2024-08-06T20:27:17.725377Z", + "iopub.status.busy": "2024-08-06T20:27:17.724945Z", + "iopub.status.idle": "2024-08-06T20:27:17.774268Z", + "shell.execute_reply": "2024-08-06T20:27:17.773751Z" } }, "outputs": [ @@ -450,7 +450,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9402435115135183\n" + "Fidelity of Trotter-evolved state with exact state: 0.9402435115158925\n" ] } ], @@ -480,10 +480,10 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.259956Z", - "iopub.status.busy": "2024-08-06T20:22:10.259596Z", - "iopub.status.idle": "2024-08-06T20:22:10.483860Z", - "shell.execute_reply": "2024-08-06T20:22:10.483316Z" + "iopub.execute_input": "2024-08-06T20:27:17.776790Z", + "iopub.status.busy": "2024-08-06T20:27:17.776412Z", + "iopub.status.idle": "2024-08-06T20:27:17.986594Z", + "shell.execute_reply": "2024-08-06T20:27:17.985954Z" } }, "outputs": [ @@ -491,7 +491,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9985212854199046\n" + "Fidelity of Trotter-evolved state with exact state: 0.9985212854203092\n" ] } ], @@ -521,10 +521,10 @@ "execution_count": 12, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.486470Z", - "iopub.status.busy": "2024-08-06T20:22:10.486092Z", - "iopub.status.idle": "2024-08-06T20:22:10.624276Z", - "shell.execute_reply": "2024-08-06T20:22:10.623647Z" + "iopub.execute_input": "2024-08-06T20:27:17.989362Z", + "iopub.status.busy": "2024-08-06T20:27:17.988983Z", + "iopub.status.idle": "2024-08-06T20:27:18.116167Z", + "shell.execute_reply": "2024-08-06T20:27:18.115634Z" } }, "outputs": [ @@ -532,7 +532,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9985212854198294\n" + "Fidelity of Trotter-evolved state with exact state: 0.9985212854200891\n" ] } ], @@ -563,10 +563,10 @@ "execution_count": 13, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.639152Z", - "iopub.status.busy": "2024-08-06T20:22:10.638794Z", - "iopub.status.idle": "2024-08-06T20:22:10.741708Z", - "shell.execute_reply": "2024-08-06T20:22:10.741080Z" + "iopub.execute_input": "2024-08-06T20:27:18.132158Z", + "iopub.status.busy": "2024-08-06T20:27:18.131774Z", + "iopub.status.idle": "2024-08-06T20:27:18.235740Z", + "shell.execute_reply": "2024-08-06T20:27:18.235222Z" } }, "outputs": [ @@ -574,7 +574,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9996731164187965\n" + "Fidelity of Trotter-evolved state with exact state: 0.9996731164189154\n" ] } ], diff --git a/dev/.doctrees/tutorials/double-factorized-trotter.doctree b/dev/.doctrees/tutorials/double-factorized-trotter.doctree index 9e72080a7..920d7b100 100644 Binary files a/dev/.doctrees/tutorials/double-factorized-trotter.doctree and b/dev/.doctrees/tutorials/double-factorized-trotter.doctree differ diff --git a/dev/_images/explanations_qiskit-gate-decompositions_34_0.png b/dev/_images/explanations_qiskit-gate-decompositions_34_0.png index 7d4daaa9e..a689d60d1 100644 Binary files a/dev/_images/explanations_qiskit-gate-decompositions_34_0.png and b/dev/_images/explanations_qiskit-gate-decompositions_34_0.png differ diff --git a/dev/_modules/ffsim/cistring.html b/dev/_modules/ffsim/cistring.html index 4e3b1dc51..7f3714add 100644 --- a/dev/_modules/ffsim/cistring.html +++ b/dev/_modules/ffsim/cistring.html @@ -5,7 +5,7 @@ - ffsim.cistring - ffsim 0.0.44 documentation + ffsim.cistring - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/contract/diag_coulomb.html b/dev/_modules/ffsim/contract/diag_coulomb.html index d0968adff..d25ef5930 100644 --- a/dev/_modules/ffsim/contract/diag_coulomb.html +++ b/dev/_modules/ffsim/contract/diag_coulomb.html @@ -5,7 +5,7 @@ - ffsim.contract.diag_coulomb - ffsim 0.0.44 documentation + ffsim.contract.diag_coulomb - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/contract/num_op_sum.html b/dev/_modules/ffsim/contract/num_op_sum.html index a96d56809..f7e3aafb8 100644 --- a/dev/_modules/ffsim/contract/num_op_sum.html +++ b/dev/_modules/ffsim/contract/num_op_sum.html @@ -5,7 +5,7 @@ - ffsim.contract.num_op_sum - ffsim 0.0.44 documentation + ffsim.contract.num_op_sum - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/contract/one_body.html b/dev/_modules/ffsim/contract/one_body.html index 5965a8cdf..516fd4265 100644 --- a/dev/_modules/ffsim/contract/one_body.html +++ b/dev/_modules/ffsim/contract/one_body.html @@ -5,7 +5,7 @@ - ffsim.contract.one_body - ffsim 0.0.44 documentation + ffsim.contract.one_body - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/gates/basic_gates.html b/dev/_modules/ffsim/gates/basic_gates.html index f8f5db583..b0ab9f868 100644 --- a/dev/_modules/ffsim/gates/basic_gates.html +++ b/dev/_modules/ffsim/gates/basic_gates.html @@ -5,7 +5,7 @@ - ffsim.gates.basic_gates - ffsim 0.0.44 documentation + ffsim.gates.basic_gates - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/gates/diag_coulomb.html b/dev/_modules/ffsim/gates/diag_coulomb.html index 1341a86b6..7fda5aec6 100644 --- a/dev/_modules/ffsim/gates/diag_coulomb.html +++ b/dev/_modules/ffsim/gates/diag_coulomb.html @@ -5,7 +5,7 @@ - ffsim.gates.diag_coulomb - ffsim 0.0.44 documentation + ffsim.gates.diag_coulomb - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/gates/num_op_sum.html b/dev/_modules/ffsim/gates/num_op_sum.html index f2852fca8..7149954b4 100644 --- a/dev/_modules/ffsim/gates/num_op_sum.html +++ b/dev/_modules/ffsim/gates/num_op_sum.html @@ -5,7 +5,7 @@ - ffsim.gates.num_op_sum - ffsim 0.0.44 documentation + ffsim.gates.num_op_sum - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/gates/orbital_rotation.html b/dev/_modules/ffsim/gates/orbital_rotation.html index 63cb0cbf7..4f83e1cf8 100644 --- a/dev/_modules/ffsim/gates/orbital_rotation.html +++ b/dev/_modules/ffsim/gates/orbital_rotation.html @@ -5,7 +5,7 @@ - ffsim.gates.orbital_rotation - ffsim 0.0.44 documentation + ffsim.gates.orbital_rotation - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/hamiltonians/diagonal_coulomb_hamiltonian.html b/dev/_modules/ffsim/hamiltonians/diagonal_coulomb_hamiltonian.html index a441f609a..b600f5031 100644 --- a/dev/_modules/ffsim/hamiltonians/diagonal_coulomb_hamiltonian.html +++ b/dev/_modules/ffsim/hamiltonians/diagonal_coulomb_hamiltonian.html @@ -5,7 +5,7 @@ - ffsim.hamiltonians.diagonal_coulomb_hamiltonian - ffsim 0.0.44 documentation + ffsim.hamiltonians.diagonal_coulomb_hamiltonian - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html b/dev/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html index 2b2c079aa..cb1faf7f2 100644 --- a/dev/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html +++ b/dev/_modules/ffsim/hamiltonians/double_factorized_hamiltonian.html @@ -5,7 +5,7 @@ - ffsim.hamiltonians.double_factorized_hamiltonian - ffsim 0.0.44 documentation + ffsim.hamiltonians.double_factorized_hamiltonian - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/hamiltonians/molecular_hamiltonian.html b/dev/_modules/ffsim/hamiltonians/molecular_hamiltonian.html index 01313dbaa..ae5612c72 100644 --- a/dev/_modules/ffsim/hamiltonians/molecular_hamiltonian.html +++ b/dev/_modules/ffsim/hamiltonians/molecular_hamiltonian.html @@ -5,7 +5,7 @@ - ffsim.hamiltonians.molecular_hamiltonian - ffsim 0.0.44 documentation + ffsim.hamiltonians.molecular_hamiltonian - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/linalg/double_factorized_decomposition.html b/dev/_modules/ffsim/linalg/double_factorized_decomposition.html index 08bc32f1a..60fc6ba41 100644 --- a/dev/_modules/ffsim/linalg/double_factorized_decomposition.html +++ b/dev/_modules/ffsim/linalg/double_factorized_decomposition.html @@ -5,7 +5,7 @@ - ffsim.linalg.double_factorized_decomposition - ffsim 0.0.44 documentation + ffsim.linalg.double_factorized_decomposition - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/linalg/givens.html b/dev/_modules/ffsim/linalg/givens.html index 8b4393698..8faba53b9 100644 --- a/dev/_modules/ffsim/linalg/givens.html +++ b/dev/_modules/ffsim/linalg/givens.html @@ -5,7 +5,7 @@ - ffsim.linalg.givens - ffsim 0.0.44 documentation + ffsim.linalg.givens - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/linalg/linalg.html b/dev/_modules/ffsim/linalg/linalg.html index 90d34a084..26376964c 100644 --- a/dev/_modules/ffsim/linalg/linalg.html +++ b/dev/_modules/ffsim/linalg/linalg.html @@ -5,7 +5,7 @@ - ffsim.linalg.linalg - ffsim 0.0.44 documentation + ffsim.linalg.linalg - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/linalg/predicates.html b/dev/_modules/ffsim/linalg/predicates.html index 2b90c6ab0..08165d230 100644 --- a/dev/_modules/ffsim/linalg/predicates.html +++ b/dev/_modules/ffsim/linalg/predicates.html @@ -5,7 +5,7 @@ - ffsim.linalg.predicates - ffsim 0.0.44 documentation + ffsim.linalg.predicates - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/molecular_data.html b/dev/_modules/ffsim/molecular_data.html index 48e6d11c0..bd93bfdca 100644 --- a/dev/_modules/ffsim/molecular_data.html +++ b/dev/_modules/ffsim/molecular_data.html @@ -5,7 +5,7 @@ - ffsim.molecular_data - ffsim 0.0.44 documentation + ffsim.molecular_data - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/operators/common_operators.html b/dev/_modules/ffsim/operators/common_operators.html index da7892869..17a13e332 100644 --- a/dev/_modules/ffsim/operators/common_operators.html +++ b/dev/_modules/ffsim/operators/common_operators.html @@ -5,7 +5,7 @@ - ffsim.operators.common_operators - ffsim 0.0.44 documentation + ffsim.operators.common_operators - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/operators/fermi_hubbard.html b/dev/_modules/ffsim/operators/fermi_hubbard.html index 00d6501f1..32ba39976 100644 --- a/dev/_modules/ffsim/operators/fermi_hubbard.html +++ b/dev/_modules/ffsim/operators/fermi_hubbard.html @@ -5,7 +5,7 @@ - ffsim.operators.fermi_hubbard - ffsim 0.0.44 documentation + ffsim.operators.fermi_hubbard - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/operators/fermion_action.html b/dev/_modules/ffsim/operators/fermion_action.html index 593e1b67e..07343267e 100644 --- a/dev/_modules/ffsim/operators/fermion_action.html +++ b/dev/_modules/ffsim/operators/fermion_action.html @@ -5,7 +5,7 @@ - ffsim.operators.fermion_action - ffsim 0.0.44 documentation + ffsim.operators.fermion_action - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/optimize/linear_method.html b/dev/_modules/ffsim/optimize/linear_method.html index e1d816b58..0210a4a03 100644 --- a/dev/_modules/ffsim/optimize/linear_method.html +++ b/dev/_modules/ffsim/optimize/linear_method.html @@ -5,7 +5,7 @@ - ffsim.optimize.linear_method - ffsim 0.0.44 documentation + ffsim.optimize.linear_method - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/protocols/apply_unitary_protocol.html b/dev/_modules/ffsim/protocols/apply_unitary_protocol.html index 0405ade78..098378075 100644 --- a/dev/_modules/ffsim/protocols/apply_unitary_protocol.html +++ b/dev/_modules/ffsim/protocols/apply_unitary_protocol.html @@ -5,7 +5,7 @@ - ffsim.protocols.apply_unitary_protocol - ffsim 0.0.44 documentation + ffsim.protocols.apply_unitary_protocol - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/protocols/diagonal_protocol.html b/dev/_modules/ffsim/protocols/diagonal_protocol.html index c8e615411..4bf123b05 100644 --- a/dev/_modules/ffsim/protocols/diagonal_protocol.html +++ b/dev/_modules/ffsim/protocols/diagonal_protocol.html @@ -5,7 +5,7 @@ - ffsim.protocols.diagonal_protocol - ffsim 0.0.44 documentation + ffsim.protocols.diagonal_protocol - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/protocols/fermion_operator_protocol.html b/dev/_modules/ffsim/protocols/fermion_operator_protocol.html index d90c6d095..d08d17bf6 100644 --- a/dev/_modules/ffsim/protocols/fermion_operator_protocol.html +++ b/dev/_modules/ffsim/protocols/fermion_operator_protocol.html @@ -5,7 +5,7 @@ - ffsim.protocols.fermion_operator_protocol - ffsim 0.0.44 documentation + ffsim.protocols.fermion_operator_protocol - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@
@@ -189,7 +189,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/diag_coulomb.html b/dev/_modules/ffsim/qiskit/gates/diag_coulomb.html index a24f08904..1b65c6b2d 100644 --- a/dev/_modules/ffsim/qiskit/gates/diag_coulomb.html +++ b/dev/_modules/ffsim/qiskit/gates/diag_coulomb.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.diag_coulomb - ffsim 0.0.44 documentation + ffsim.qiskit.gates.diag_coulomb - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/double_factorized_trotter.html b/dev/_modules/ffsim/qiskit/gates/double_factorized_trotter.html index 8f4c6d461..b24d63701 100644 --- a/dev/_modules/ffsim/qiskit/gates/double_factorized_trotter.html +++ b/dev/_modules/ffsim/qiskit/gates/double_factorized_trotter.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.double_factorized_trotter - ffsim 0.0.44 documentation + ffsim.qiskit.gates.double_factorized_trotter - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/givens_ansatz.html b/dev/_modules/ffsim/qiskit/gates/givens_ansatz.html index ba672f3c9..20ea8f0e8 100644 --- a/dev/_modules/ffsim/qiskit/gates/givens_ansatz.html +++ b/dev/_modules/ffsim/qiskit/gates/givens_ansatz.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.givens_ansatz - ffsim 0.0.44 documentation + ffsim.qiskit.gates.givens_ansatz - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/num_num_ansatz.html b/dev/_modules/ffsim/qiskit/gates/num_num_ansatz.html index 0cf169286..f0bd68d65 100644 --- a/dev/_modules/ffsim/qiskit/gates/num_num_ansatz.html +++ b/dev/_modules/ffsim/qiskit/gates/num_num_ansatz.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.num_num_ansatz - ffsim 0.0.44 documentation + ffsim.qiskit.gates.num_num_ansatz - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/num_op_sum.html b/dev/_modules/ffsim/qiskit/gates/num_op_sum.html index 81a1a34e7..dea319381 100644 --- a/dev/_modules/ffsim/qiskit/gates/num_op_sum.html +++ b/dev/_modules/ffsim/qiskit/gates/num_op_sum.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.num_op_sum - ffsim 0.0.44 documentation + ffsim.qiskit.gates.num_op_sum - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/orbital_rotation.html b/dev/_modules/ffsim/qiskit/gates/orbital_rotation.html index 86672ab79..fea06c4a0 100644 --- a/dev/_modules/ffsim/qiskit/gates/orbital_rotation.html +++ b/dev/_modules/ffsim/qiskit/gates/orbital_rotation.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.orbital_rotation - ffsim 0.0.44 documentation + ffsim.qiskit.gates.orbital_rotation - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@
@@ -189,7 +189,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/gates/ucj_operator.html b/dev/_modules/ffsim/qiskit/gates/ucj_operator.html index 32fa2930c..78455831f 100644 --- a/dev/_modules/ffsim/qiskit/gates/ucj_operator.html +++ b/dev/_modules/ffsim/qiskit/gates/ucj_operator.html @@ -5,7 +5,7 @@ - ffsim.qiskit.gates.ucj_operator - ffsim 0.0.44 documentation + ffsim.qiskit.gates.ucj_operator - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/jordan_wigner.html b/dev/_modules/ffsim/qiskit/jordan_wigner.html index fc2cb1c2a..6eb818a14 100644 --- a/dev/_modules/ffsim/qiskit/jordan_wigner.html +++ b/dev/_modules/ffsim/qiskit/jordan_wigner.html @@ -5,7 +5,7 @@ - ffsim.qiskit.jordan_wigner - ffsim 0.0.44 documentation + ffsim.qiskit.jordan_wigner - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/sampler.html b/dev/_modules/ffsim/qiskit/sampler.html index ed0e53073..6c9f52026 100644 --- a/dev/_modules/ffsim/qiskit/sampler.html +++ b/dev/_modules/ffsim/qiskit/sampler.html @@ -5,7 +5,7 @@ - ffsim.qiskit.sampler - ffsim 0.0.44 documentation + ffsim.qiskit.sampler - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/sim.html b/dev/_modules/ffsim/qiskit/sim.html index 3018f7a50..6266f2d61 100644 --- a/dev/_modules/ffsim/qiskit/sim.html +++ b/dev/_modules/ffsim/qiskit/sim.html @@ -5,7 +5,7 @@ - ffsim.qiskit.sim - ffsim 0.0.44 documentation + ffsim.qiskit.sim - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/transpiler_passes/drop_negligible.html b/dev/_modules/ffsim/qiskit/transpiler_passes/drop_negligible.html index f74ad9be8..2abd3d6bb 100644 --- a/dev/_modules/ffsim/qiskit/transpiler_passes/drop_negligible.html +++ b/dev/_modules/ffsim/qiskit/transpiler_passes/drop_negligible.html @@ -5,7 +5,7 @@ - ffsim.qiskit.transpiler_passes.drop_negligible - ffsim 0.0.44 documentation + ffsim.qiskit.transpiler_passes.drop_negligible - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/transpiler_passes/merge_orbital_rotations.html b/dev/_modules/ffsim/qiskit/transpiler_passes/merge_orbital_rotations.html index 762d6ce9a..448a94f11 100644 --- a/dev/_modules/ffsim/qiskit/transpiler_passes/merge_orbital_rotations.html +++ b/dev/_modules/ffsim/qiskit/transpiler_passes/merge_orbital_rotations.html @@ -5,7 +5,7 @@ - ffsim.qiskit.transpiler_passes.merge_orbital_rotations - ffsim 0.0.44 documentation + ffsim.qiskit.transpiler_passes.merge_orbital_rotations - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ -
+
diff --git a/dev/_modules/ffsim/qiskit/transpiler_stages.html b/dev/_modules/ffsim/qiskit/transpiler_stages.html index e066bca93..aa1687218 100644 --- a/dev/_modules/ffsim/qiskit/transpiler_stages.html +++ b/dev/_modules/ffsim/qiskit/transpiler_stages.html @@ -5,7 +5,7 @@ - ffsim.qiskit.transpiler_stages - ffsim 0.0.44 documentation + ffsim.qiskit.transpiler_stages - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/qiskit/util.html b/dev/_modules/ffsim/qiskit/util.html index 6bec6a1e6..11272cded 100644 --- a/dev/_modules/ffsim/qiskit/util.html +++ b/dev/_modules/ffsim/qiskit/util.html @@ -5,7 +5,7 @@ - ffsim.qiskit.util - ffsim 0.0.44 documentation + ffsim.qiskit.util - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/random/random.html b/dev/_modules/ffsim/random/random.html index a47e33037..3f7fdeec6 100644 --- a/dev/_modules/ffsim/random/random.html +++ b/dev/_modules/ffsim/random/random.html @@ -5,7 +5,7 @@ - ffsim.random.random - ffsim 0.0.44 documentation + ffsim.random.random - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/spin.html b/dev/_modules/ffsim/spin.html index ad1cc7278..d320d6b4e 100644 --- a/dev/_modules/ffsim/spin.html +++ b/dev/_modules/ffsim/spin.html @@ -5,7 +5,7 @@ - ffsim.spin - ffsim 0.0.44 documentation + ffsim.spin - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/states/bitstring.html b/dev/_modules/ffsim/states/bitstring.html index b44b4c7c7..2ccf5331c 100644 --- a/dev/_modules/ffsim/states/bitstring.html +++ b/dev/_modules/ffsim/states/bitstring.html @@ -5,7 +5,7 @@ - ffsim.states.bitstring - ffsim 0.0.44 documentation + ffsim.states.bitstring - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/states/product_state_sum.html b/dev/_modules/ffsim/states/product_state_sum.html index b0c68d556..f3db251b4 100644 --- a/dev/_modules/ffsim/states/product_state_sum.html +++ b/dev/_modules/ffsim/states/product_state_sum.html @@ -5,7 +5,7 @@ - ffsim.states.product_state_sum - ffsim 0.0.44 documentation + ffsim.states.product_state_sum - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/states/rdm.html b/dev/_modules/ffsim/states/rdm.html index b4de3fc08..3f6a3196d 100644 --- a/dev/_modules/ffsim/states/rdm.html +++ b/dev/_modules/ffsim/states/rdm.html @@ -5,7 +5,7 @@ - ffsim.states.rdm - ffsim 0.0.44 documentation + ffsim.states.rdm - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/states/slater.html b/dev/_modules/ffsim/states/slater.html index 133997487..0c2cea0a5 100644 --- a/dev/_modules/ffsim/states/slater.html +++ b/dev/_modules/ffsim/states/slater.html @@ -5,7 +5,7 @@ - ffsim.states.slater - ffsim 0.0.44 documentation + ffsim.states.slater - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/states/states.html b/dev/_modules/ffsim/states/states.html index 73569cf87..a5ffb15f9 100644 --- a/dev/_modules/ffsim/states/states.html +++ b/dev/_modules/ffsim/states/states.html @@ -5,7 +5,7 @@ - ffsim.states.states - ffsim 0.0.44 documentation + ffsim.states.states - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/states/wick.html b/dev/_modules/ffsim/states/wick.html index 5d54d995d..3c0343c1e 100644 --- a/dev/_modules/ffsim/states/wick.html +++ b/dev/_modules/ffsim/states/wick.html @@ -5,7 +5,7 @@ - ffsim.states.wick - ffsim 0.0.44 documentation + ffsim.states.wick - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/testing/testing.html b/dev/_modules/ffsim/testing/testing.html index f8a7fc369..adc346f76 100644 --- a/dev/_modules/ffsim/testing/testing.html +++ b/dev/_modules/ffsim/testing/testing.html @@ -5,7 +5,7 @@ - ffsim.testing.testing - ffsim 0.0.44 documentation + ffsim.testing.testing - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/trotter/diagonal_coulomb.html b/dev/_modules/ffsim/trotter/diagonal_coulomb.html index dd187f2e6..7b415c10c 100644 --- a/dev/_modules/ffsim/trotter/diagonal_coulomb.html +++ b/dev/_modules/ffsim/trotter/diagonal_coulomb.html @@ -5,7 +5,7 @@ - ffsim.trotter.diagonal_coulomb - ffsim 0.0.44 documentation + ffsim.trotter.diagonal_coulomb - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/trotter/double_factorized.html b/dev/_modules/ffsim/trotter/double_factorized.html index 96ffac339..57f3a34e5 100644 --- a/dev/_modules/ffsim/trotter/double_factorized.html +++ b/dev/_modules/ffsim/trotter/double_factorized.html @@ -5,7 +5,7 @@ - ffsim.trotter.double_factorized - ffsim 0.0.44 documentation + ffsim.trotter.double_factorized - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/trotter/qdrift.html b/dev/_modules/ffsim/trotter/qdrift.html index f0babdbf4..e1d2e23ae 100644 --- a/dev/_modules/ffsim/trotter/qdrift.html +++ b/dev/_modules/ffsim/trotter/qdrift.html @@ -5,7 +5,7 @@ - ffsim.trotter.qdrift - ffsim 0.0.44 documentation + ffsim.trotter.qdrift - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/variational/givens.html b/dev/_modules/ffsim/variational/givens.html index 0729a2593..c03cec888 100644 --- a/dev/_modules/ffsim/variational/givens.html +++ b/dev/_modules/ffsim/variational/givens.html @@ -5,7 +5,7 @@ - ffsim.variational.givens - ffsim 0.0.44 documentation + ffsim.variational.givens - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/variational/hopgate.html b/dev/_modules/ffsim/variational/hopgate.html index 3ac4506f3..6dcdc0246 100644 --- a/dev/_modules/ffsim/variational/hopgate.html +++ b/dev/_modules/ffsim/variational/hopgate.html @@ -5,7 +5,7 @@ - ffsim.variational.hopgate - ffsim 0.0.44 documentation + ffsim.variational.hopgate - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/variational/multireference.html b/dev/_modules/ffsim/variational/multireference.html index 7d35475f7..419e3d63b 100644 --- a/dev/_modules/ffsim/variational/multireference.html +++ b/dev/_modules/ffsim/variational/multireference.html @@ -5,7 +5,7 @@ - ffsim.variational.multireference - ffsim 0.0.44 documentation + ffsim.variational.multireference - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/variational/num_num.html b/dev/_modules/ffsim/variational/num_num.html index 8a6e76231..fdfc363ba 100644 --- a/dev/_modules/ffsim/variational/num_num.html +++ b/dev/_modules/ffsim/variational/num_num.html @@ -5,7 +5,7 @@ - ffsim.variational.num_num - ffsim 0.0.44 documentation + ffsim.variational.num_num - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/variational/ucj.html b/dev/_modules/ffsim/variational/ucj.html index 579f64a2d..a3b43dc23 100644 --- a/dev/_modules/ffsim/variational/ucj.html +++ b/dev/_modules/ffsim/variational/ucj.html @@ -5,7 +5,7 @@ - ffsim.variational.ucj - ffsim 0.0.44 documentation + ffsim.variational.ucj - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/ffsim/variational/ucj_spin_balanced.html b/dev/_modules/ffsim/variational/ucj_spin_balanced.html index e2df19a9c..02f77ca42 100644 --- a/dev/_modules/ffsim/variational/ucj_spin_balanced.html +++ b/dev/_modules/ffsim/variational/ucj_spin_balanced.html @@ -5,7 +5,7 @@ - ffsim.variational.ucj_spin_balanced - ffsim 0.0.44 documentation + ffsim.variational.ucj_spin_balanced - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@
@@ -189,7 +189,7 @@
@@ -189,7 +189,7 @@ +
diff --git a/dev/_modules/index.html b/dev/_modules/index.html index 9b86bbc2e..f46f9efe6 100644 --- a/dev/_modules/index.html +++ b/dev/_modules/index.html @@ -5,7 +5,7 @@ - Overview: module code - ffsim 0.0.44 documentation + Overview: module code - ffsim 0.0.45.dev0 documentation @@ -165,7 +165,7 @@
@@ -189,7 +189,7 @@ -
+
diff --git a/dev/_static/documentation_options.js b/dev/_static/documentation_options.js index e66a3d086..d2cdf0e2b 100644 --- a/dev/_static/documentation_options.js +++ b/dev/_static/documentation_options.js @@ -1,5 +1,5 @@ const DOCUMENTATION_OPTIONS = { - VERSION: '0.0.44', + VERSION: '0.0.45.dev0', LANGUAGE: 'en', COLLAPSE_INDEX: false, BUILDER: 'html', diff --git a/dev/api/ffsim.contract.html b/dev/api/ffsim.contract.html index 61e4627dc..04ac1d333 100644 --- a/dev/api/ffsim.contract.html +++ b/dev/api/ffsim.contract.html @@ -6,7 +6,7 @@ - ffsim.contract - ffsim 0.0.44 documentation + ffsim.contract - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
+
diff --git a/dev/api/ffsim.html b/dev/api/ffsim.html index 9574d243d..ee4e2b567 100644 --- a/dev/api/ffsim.html +++ b/dev/api/ffsim.html @@ -6,7 +6,7 @@ - ffsim - ffsim 0.0.44 documentation + ffsim - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
@@ -190,7 +190,7 @@ -
+
diff --git a/dev/api/ffsim.linalg.html b/dev/api/ffsim.linalg.html index 68c3b0173..8c4ba056c 100644 --- a/dev/api/ffsim.linalg.html +++ b/dev/api/ffsim.linalg.html @@ -6,7 +6,7 @@ - ffsim.linalg - ffsim 0.0.44 documentation + ffsim.linalg - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
+
diff --git a/dev/api/ffsim.optimize.html b/dev/api/ffsim.optimize.html index 4ba0325b1..8174b757b 100644 --- a/dev/api/ffsim.optimize.html +++ b/dev/api/ffsim.optimize.html @@ -6,7 +6,7 @@ - ffsim.optimize - ffsim 0.0.44 documentation + ffsim.optimize - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
+
diff --git a/dev/api/ffsim.qiskit.html b/dev/api/ffsim.qiskit.html index 15d56b0a2..b82dfa9d5 100644 --- a/dev/api/ffsim.qiskit.html +++ b/dev/api/ffsim.qiskit.html @@ -6,7 +6,7 @@ - ffsim.qiskit - ffsim 0.0.44 documentation + ffsim.qiskit - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
@@ -190,7 +190,7 @@ -
+
diff --git a/dev/api/ffsim.random.html b/dev/api/ffsim.random.html index 62bede954..242ff3f5f 100644 --- a/dev/api/ffsim.random.html +++ b/dev/api/ffsim.random.html @@ -6,7 +6,7 @@ - ffsim.random - ffsim 0.0.44 documentation + ffsim.random - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
+
diff --git a/dev/api/ffsim.testing.html b/dev/api/ffsim.testing.html index 8680742df..7db89822f 100644 --- a/dev/api/ffsim.testing.html +++ b/dev/api/ffsim.testing.html @@ -6,7 +6,7 @@ - ffsim.testing - ffsim 0.0.44 documentation + ffsim.testing - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
+
diff --git a/dev/api/index.html b/dev/api/index.html index 324e17cd3..c5109a276 100644 --- a/dev/api/index.html +++ b/dev/api/index.html @@ -6,7 +6,7 @@ - API reference - ffsim 0.0.44 documentation + API reference - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
@@ -491,7 +491,7 @@

Operator action via SciPy LinearOperators +

diff --git a/dev/explanations/hamiltonians.ipynb b/dev/explanations/hamiltonians.ipynb index 6c80780f1..f3676551f 100644 --- a/dev/explanations/hamiltonians.ipynb +++ b/dev/explanations/hamiltonians.ipynb @@ -33,10 +33,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:39.552304Z", - "iopub.status.busy": "2024-08-06T20:19:39.552101Z", - "iopub.status.idle": "2024-08-06T20:19:40.265412Z", - "shell.execute_reply": "2024-08-06T20:19:40.264821Z" + "iopub.execute_input": "2024-08-06T20:24:44.379773Z", + "iopub.status.busy": "2024-08-06T20:24:44.379246Z", + "iopub.status.idle": "2024-08-06T20:24:45.092552Z", + "shell.execute_reply": "2024-08-06T20:24:45.091936Z" } }, "outputs": [], @@ -68,10 +68,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.268514Z", - "iopub.status.busy": "2024-08-06T20:19:40.267873Z", - "iopub.status.idle": "2024-08-06T20:19:40.270960Z", - "shell.execute_reply": "2024-08-06T20:19:40.270453Z" + "iopub.execute_input": "2024-08-06T20:24:45.095527Z", + "iopub.status.busy": "2024-08-06T20:24:45.095083Z", + "iopub.status.idle": "2024-08-06T20:24:45.098020Z", + "shell.execute_reply": "2024-08-06T20:24:45.097540Z" } }, "outputs": [], @@ -99,10 +99,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.273316Z", - "iopub.status.busy": "2024-08-06T20:19:40.272951Z", - "iopub.status.idle": "2024-08-06T20:19:40.276088Z", - "shell.execute_reply": "2024-08-06T20:19:40.275632Z" + "iopub.execute_input": "2024-08-06T20:24:45.100279Z", + "iopub.status.busy": "2024-08-06T20:24:45.099929Z", + "iopub.status.idle": "2024-08-06T20:24:45.103209Z", + "shell.execute_reply": "2024-08-06T20:24:45.102613Z" } }, "outputs": [], @@ -127,10 +127,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.278357Z", - "iopub.status.busy": "2024-08-06T20:19:40.277999Z", - "iopub.status.idle": "2024-08-06T20:19:40.282979Z", - "shell.execute_reply": "2024-08-06T20:19:40.282382Z" + "iopub.execute_input": "2024-08-06T20:24:45.105678Z", + "iopub.status.busy": "2024-08-06T20:24:45.105326Z", + "iopub.status.idle": "2024-08-06T20:24:45.110457Z", + "shell.execute_reply": "2024-08-06T20:24:45.109920Z" } }, "outputs": [], @@ -152,17 +152,17 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.285696Z", - "iopub.status.busy": "2024-08-06T20:19:40.285112Z", - "iopub.status.idle": "2024-08-06T20:19:40.305553Z", - "shell.execute_reply": "2024-08-06T20:19:40.304896Z" + "iopub.execute_input": "2024-08-06T20:24:45.113599Z", + "iopub.status.busy": "2024-08-06T20:24:45.113188Z", + "iopub.status.idle": "2024-08-06T20:24:45.135280Z", + "shell.execute_reply": "2024-08-06T20:24:45.134617Z" } }, "outputs": [ { "data": { "text/plain": [ - "np.float64(-99.55717072551545)" + "np.float64(-99.55717072551558)" ] }, "execution_count": 5, @@ -191,10 +191,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.340166Z", - "iopub.status.busy": "2024-08-06T20:19:40.339768Z", - "iopub.status.idle": "2024-08-06T20:19:40.756460Z", - "shell.execute_reply": "2024-08-06T20:19:40.755820Z" + "iopub.execute_input": "2024-08-06T20:24:45.169231Z", + "iopub.status.busy": "2024-08-06T20:24:45.168800Z", + "iopub.status.idle": "2024-08-06T20:24:45.583700Z", + "shell.execute_reply": "2024-08-06T20:24:45.583018Z" } }, "outputs": [ @@ -202,7 +202,7 @@ "name": "stderr", "output_type": "stream", "text": [ - "/tmp/ipykernel_4324/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n", + "/tmp/ipykernel_4340/2190712273.py:2: UserWarning: Trace of LinearOperator not available, it will be estimated. Provide `traceA` to ensure performance.\n", " evolved_vec = scipy.sparse.linalg.expm_multiply(-1j * time * linop, vec)\n" ] } @@ -224,10 +224,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:40.760806Z", - "iopub.status.busy": "2024-08-06T20:19:40.759843Z", - "iopub.status.idle": "2024-08-06T20:19:41.134423Z", - "shell.execute_reply": "2024-08-06T20:19:41.133771Z" + "iopub.execute_input": "2024-08-06T20:24:45.588023Z", + "iopub.status.busy": "2024-08-06T20:24:45.586986Z", + "iopub.status.idle": "2024-08-06T20:24:45.956809Z", + "shell.execute_reply": "2024-08-06T20:24:45.956160Z" } }, "outputs": [], diff --git a/dev/explanations/index.html b/dev/explanations/index.html index 1160d4bc1..6e202ef11 100644 --- a/dev/explanations/index.html +++ b/dev/explanations/index.html @@ -6,7 +6,7 @@ - Explanations - ffsim 0.0.44 documentation + Explanations - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
@@ -191,7 +191,7 @@ diff --git a/dev/explanations/qiskit-gate-decompositions.ipynb b/dev/explanations/qiskit-gate-decompositions.ipynb index e34d86836..22b1b7ad8 100644 --- a/dev/explanations/qiskit-gate-decompositions.ipynb +++ b/dev/explanations/qiskit-gate-decompositions.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:46.702638Z", - "iopub.status.busy": "2024-08-06T20:19:46.702165Z", - "iopub.status.idle": "2024-08-06T20:19:48.251098Z", - "shell.execute_reply": "2024-08-06T20:19:48.250518Z" + "iopub.execute_input": "2024-08-06T20:24:51.709980Z", + "iopub.status.busy": "2024-08-06T20:24:51.709777Z", + "iopub.status.idle": "2024-08-06T20:24:53.360852Z", + "shell.execute_reply": "2024-08-06T20:24:53.360254Z" } }, "outputs": [ @@ -81,10 +81,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.253793Z", - "iopub.status.busy": "2024-08-06T20:19:48.253272Z", - "iopub.status.idle": "2024-08-06T20:19:48.449485Z", - "shell.execute_reply": "2024-08-06T20:19:48.448872Z" + "iopub.execute_input": "2024-08-06T20:24:53.363643Z", + "iopub.status.busy": "2024-08-06T20:24:53.363079Z", + "iopub.status.idle": "2024-08-06T20:24:53.560717Z", + "shell.execute_reply": "2024-08-06T20:24:53.560146Z" } }, "outputs": [ @@ -119,10 +119,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.451940Z", - "iopub.status.busy": "2024-08-06T20:19:48.451626Z", - "iopub.status.idle": "2024-08-06T20:19:48.562785Z", - "shell.execute_reply": "2024-08-06T20:19:48.562173Z" + "iopub.execute_input": "2024-08-06T20:24:53.563163Z", + "iopub.status.busy": "2024-08-06T20:24:53.562960Z", + "iopub.status.idle": "2024-08-06T20:24:53.674120Z", + "shell.execute_reply": "2024-08-06T20:24:53.673549Z" } }, "outputs": [ @@ -156,10 +156,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.565552Z", - "iopub.status.busy": "2024-08-06T20:19:48.565100Z", - "iopub.status.idle": "2024-08-06T20:19:48.677229Z", - "shell.execute_reply": "2024-08-06T20:19:48.676561Z" + "iopub.execute_input": "2024-08-06T20:24:53.676738Z", + "iopub.status.busy": "2024-08-06T20:24:53.676336Z", + "iopub.status.idle": "2024-08-06T20:24:53.789203Z", + "shell.execute_reply": "2024-08-06T20:24:53.788596Z" } }, "outputs": [ @@ -196,10 +196,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.679670Z", - "iopub.status.busy": "2024-08-06T20:19:48.679468Z", - "iopub.status.idle": "2024-08-06T20:19:48.865586Z", - "shell.execute_reply": "2024-08-06T20:19:48.864976Z" + "iopub.execute_input": "2024-08-06T20:24:53.791819Z", + "iopub.status.busy": "2024-08-06T20:24:53.791450Z", + "iopub.status.idle": "2024-08-06T20:24:53.979082Z", + "shell.execute_reply": "2024-08-06T20:24:53.978392Z" } }, "outputs": [ @@ -250,10 +250,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:48.868313Z", - "iopub.status.busy": "2024-08-06T20:19:48.867900Z", - "iopub.status.idle": "2024-08-06T20:19:49.090157Z", - "shell.execute_reply": "2024-08-06T20:19:49.089542Z" + "iopub.execute_input": "2024-08-06T20:24:53.981664Z", + "iopub.status.busy": "2024-08-06T20:24:53.981461Z", + "iopub.status.idle": "2024-08-06T20:24:54.207665Z", + "shell.execute_reply": "2024-08-06T20:24:54.207024Z" } }, "outputs": [ @@ -292,10 +292,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:49.092686Z", - "iopub.status.busy": "2024-08-06T20:19:49.092278Z", - "iopub.status.idle": "2024-08-06T20:19:49.228953Z", - "shell.execute_reply": "2024-08-06T20:19:49.228386Z" + "iopub.execute_input": "2024-08-06T20:24:54.210219Z", + "iopub.status.busy": "2024-08-06T20:24:54.210017Z", + "iopub.status.idle": "2024-08-06T20:24:54.347320Z", + "shell.execute_reply": "2024-08-06T20:24:54.346674Z" } }, "outputs": [ @@ -334,10 +334,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:49.231531Z", - "iopub.status.busy": "2024-08-06T20:19:49.231135Z", - "iopub.status.idle": "2024-08-06T20:19:49.763939Z", - "shell.execute_reply": "2024-08-06T20:19:49.763288Z" + "iopub.execute_input": "2024-08-06T20:24:54.349837Z", + "iopub.status.busy": "2024-08-06T20:24:54.349634Z", + "iopub.status.idle": "2024-08-06T20:24:54.908270Z", + "shell.execute_reply": "2024-08-06T20:24:54.907666Z" } }, "outputs": [ @@ -383,10 +383,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:49.766630Z", - "iopub.status.busy": "2024-08-06T20:19:49.766233Z", - "iopub.status.idle": "2024-08-06T20:19:49.938415Z", - "shell.execute_reply": "2024-08-06T20:19:49.937753Z" + "iopub.execute_input": "2024-08-06T20:24:54.911012Z", + "iopub.status.busy": "2024-08-06T20:24:54.910604Z", + "iopub.status.idle": "2024-08-06T20:24:55.082168Z", + "shell.execute_reply": "2024-08-06T20:24:55.081575Z" } }, "outputs": [ @@ -425,10 +425,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:49.941117Z", - "iopub.status.busy": "2024-08-06T20:19:49.940710Z", - "iopub.status.idle": "2024-08-06T20:19:50.124222Z", - "shell.execute_reply": "2024-08-06T20:19:50.123565Z" + "iopub.execute_input": "2024-08-06T20:24:55.084566Z", + "iopub.status.busy": "2024-08-06T20:24:55.084356Z", + "iopub.status.idle": "2024-08-06T20:24:55.267114Z", + "shell.execute_reply": "2024-08-06T20:24:55.266473Z" } }, "outputs": [ @@ -474,10 +474,10 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.126905Z", - "iopub.status.busy": "2024-08-06T20:19:50.126501Z", - "iopub.status.idle": "2024-08-06T20:19:50.258289Z", - "shell.execute_reply": "2024-08-06T20:19:50.257655Z" + "iopub.execute_input": "2024-08-06T20:24:55.269526Z", + "iopub.status.busy": "2024-08-06T20:24:55.269324Z", + "iopub.status.idle": "2024-08-06T20:24:55.403463Z", + "shell.execute_reply": "2024-08-06T20:24:55.402851Z" } }, "outputs": [ @@ -513,10 +513,10 @@ "execution_count": 12, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.261002Z", - "iopub.status.busy": "2024-08-06T20:19:50.260606Z", - "iopub.status.idle": "2024-08-06T20:19:50.442036Z", - "shell.execute_reply": "2024-08-06T20:19:50.441379Z" + "iopub.execute_input": "2024-08-06T20:24:55.406018Z", + "iopub.status.busy": "2024-08-06T20:24:55.405637Z", + "iopub.status.idle": "2024-08-06T20:24:55.588982Z", + "shell.execute_reply": "2024-08-06T20:24:55.588405Z" } }, "outputs": [ @@ -553,10 +553,10 @@ "execution_count": 13, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.444839Z", - "iopub.status.busy": "2024-08-06T20:19:50.444406Z", - "iopub.status.idle": "2024-08-06T20:19:50.606875Z", - "shell.execute_reply": "2024-08-06T20:19:50.606264Z" + "iopub.execute_input": "2024-08-06T20:24:55.591810Z", + "iopub.status.busy": "2024-08-06T20:24:55.591324Z", + "iopub.status.idle": "2024-08-06T20:24:55.757074Z", + "shell.execute_reply": "2024-08-06T20:24:55.756406Z" } }, "outputs": [ @@ -593,10 +593,10 @@ "execution_count": 14, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.609564Z", - "iopub.status.busy": "2024-08-06T20:19:50.609164Z", - "iopub.status.idle": "2024-08-06T20:19:50.741075Z", - "shell.execute_reply": "2024-08-06T20:19:50.740513Z" + "iopub.execute_input": "2024-08-06T20:24:55.759820Z", + "iopub.status.busy": "2024-08-06T20:24:55.759340Z", + "iopub.status.idle": "2024-08-06T20:24:55.893463Z", + "shell.execute_reply": "2024-08-06T20:24:55.892862Z" } }, "outputs": [ @@ -630,10 +630,10 @@ "execution_count": 15, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.743744Z", - "iopub.status.busy": "2024-08-06T20:19:50.743342Z", - "iopub.status.idle": "2024-08-06T20:19:50.903722Z", - "shell.execute_reply": "2024-08-06T20:19:50.903095Z" + "iopub.execute_input": "2024-08-06T20:24:55.896047Z", + "iopub.status.busy": "2024-08-06T20:24:55.895696Z", + "iopub.status.idle": "2024-08-06T20:24:56.154218Z", + "shell.execute_reply": "2024-08-06T20:24:56.153611Z" } }, "outputs": [ @@ -677,10 +677,10 @@ "execution_count": 16, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:50.906456Z", - "iopub.status.busy": "2024-08-06T20:19:50.906061Z", - "iopub.status.idle": "2024-08-06T20:19:51.329523Z", - "shell.execute_reply": "2024-08-06T20:19:51.328887Z" + "iopub.execute_input": "2024-08-06T20:24:56.156719Z", + "iopub.status.busy": "2024-08-06T20:24:56.156376Z", + "iopub.status.idle": "2024-08-06T20:24:56.482595Z", + "shell.execute_reply": "2024-08-06T20:24:56.482023Z" } }, "outputs": [ @@ -736,16 +736,16 @@ "execution_count": 17, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:51.332040Z", - "iopub.status.busy": "2024-08-06T20:19:51.331670Z", - "iopub.status.idle": "2024-08-06T20:19:51.793507Z", - "shell.execute_reply": "2024-08-06T20:19:51.792844Z" + "iopub.execute_input": "2024-08-06T20:24:56.485345Z", + "iopub.status.busy": "2024-08-06T20:24:56.484849Z", + "iopub.status.idle": "2024-08-06T20:24:56.957927Z", + "shell.execute_reply": "2024-08-06T20:24:56.957248Z" } }, "outputs": [ { "data": { - "image/png": "iVBORw0KGgoAAAANSUhEUgAABLsAAAMkCAYAAABQkSLjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAADWwElEQVR4nOzdeXhU1f3H8fcsISFkI0GWsCSBsGMIBUEgSNgUbAVRcQMFCu5LsRUXBIsKWLSg1SIuYFl+QrFWC1hA0WZEMBBZIigQkgAREcISQ1ayzfz+GBkYEsKSZCYz+byeJw+5554753svN3fufOeccw02m82GiIiIiIiIiIiIFzC6OwAREREREREREZHqomSXiIiIiIiIiIh4DSW7RERERERERETEayjZJSIiIiIiIiIiXkPJLhERERERERER8RpKdomIiIiIiIiIiNdQsktERERERERERLyGkl0iIiIiIiIiIuI1lOwSERERERERERGvoWSXiIiIiIiIiIh4DSW7RERERERERETEayjZJSIiIiIiIiIiXkPJLhERERERERER8RpKdomIiIiIiIiIiNdQsktERERERERERLyGkl0iIiIiIiIiIuI1lOwSERERERERERGvoWSXiIiIiIiIiIh4DSW7RERERERERETEayjZJSIiIiIiIiIiXkPJLhERERERERER8RpKdomIiIiIiIiIiNdQsktERERERERERLyGkl0iIiIiIiIiIuI1lOwSERERERERERGvoWSXiIiIiIiIiIh4DSW7RERERERERETEayjZJSIiIiIiIiIiXkPJLhERERERERER8RpmdwdQmxXnFvDLnh/dHYbXaNixFfUC/S9aL68E0nJcEFAFooMgwMc9bYuIiIiIiIhI1SnZVYlf9vzI2hFT3R2G1xi2cgZNena4aL20HJi4yQUBVWBBX4gNc0/bIiIiIiIiIlJ1GsYoIiIiIiIiIiJeQ8kuERERERERERHxGkp2iYiIiIiIiIiI11CyS0REREREREREvIYmqBevkPJcPPl7EzGYfTCYzPg170D4mJkEdR3k7tBERERERERExIXUs0u8RviYmXRbkUfM4kwatO9N+qybKcs/5e6wRERERERERMSFlOwSr2P08aXRkAlYT+dx+kiau8MRERERERERERdSsku8jrWokBPrF2D0D8IvvK27wxERERERERER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XkRERERERES8i3p2iYiIiIiIiIiI11CyS0REREREREREvIaSXSIiIiIiIiIi4jWU7BIREREREREREa+hCeql1okOggV93de2iIiIiIiIiHguJbuk1gnwgdgwd0chIiIiIiIiIp5IwxhF6iiLxUJUVBTx8fGMHTu23PqZM2eSmppa6Ws89thj9OvXj1mzZpVbd/DgQZo1a0Z8fDz33nsvGzdu5Nprr6VPnz7MmTMHgHXr1hEfH098fDxhYWEkJyezZ88eZs+eXT07KSIiIiIiInWOkl0iddiECROwWCwEBweTmJjoKLdarezcuZO2bdtecNutW7diNpv5+uuv2b59O5mZmeXq/Pa3v8VisbBkyRJat27Nhg0b+Oabb/j0008pKChg6NChWCwWEhISaN26NV27dqVjx45s374dm81WI/ssIiIiIiIi3k3JLhGhS5cuHD582LH83Xff0a5du0q32bJlCwMHDgSgf//+bNu2rVydzz77jH79+vHBBx8QHh5OvXr1ADCZTBiNZy8/3377LT169MBgMADQunVrfvjhhyrvl4iIiIiIiNQ9SnaJCImJiURHRzuWU1NTiYyMrHSb7OxsgoLsM/oHBgaSnZ3ttL5Zs2akpKTw+eef884773Dy5EkA1q9fT5s2bfDz83PUXblyJSNGjHAsR0REsG/fvirulYiIiIiIiNRFmqBepA5buHAhX3zxBXFxccTGxlZYZ/fu3Tz88MNOZUOHDiUkJIScnBwAcnNzadOmjVMdX19fx+/9+vUjPT2dwsJCXn75ZVatWuVUNyEhgT//+c/VsEciIiIiIiJS1ynZJVKHTZgwgalTp5Yrb9u2LR9//DEAnTp1wmKxlKvz7bffsnz5cm666SY2bNjA7bff7rQ+Ly+PgIAAbDYbW7du5f7772fcuHHMnz+fgIAAR739+/fTokULxxBHgIyMDPr27VtNeykiIiIiIiJ1iYYxikg5Xbt2JSUlpdI611xzDUVFRfTr14+uXbvSpEkTjh49yquvvgrAN998Q48ePejTpw/XX389//vf/9i9ezcPPPAA8fHxjjnCzh/CCJCWlkaXLl1qZudERERERETEq6lnl0gdFR8fT3x8fIXrjEYjMTExpKamVvpExnnz5jktN23alMmTJwNw/fXXc/311zutHz9+fLnXeOKJJ5yW9+zZQ/fu3R2T1YuIiIiI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ERERERERqRlKdonHaPXgPKdl/9axADS9ZTJNb5lc4TbnJrXaz/qqpkITERERERERkVpCwxhFRERERERERMRrKNklIiIiIiIiIiJeQ8kuERERERERERHxGkp2iYiIiIiIiIiI19AE9VLrRAfBgr7ua1tERMSdLBYL48ePJyIigoiICBYvXuy0funSpTRr1ozBgwcza9Ys1q5dS2xsLG+++aZTvXHjxpGSkoKvry/PP/88AwcO5Prrr6ewsJCgoCBWrFhBQEAAW7ZsYcqUKVitVmbPnk10dDQzZsxg7ty5rtxt8VLVdT6vW7eOF154gcDAQBYtWkR4eDhPPvkkixcv5rXXXmPMmDEAxMfHA3D8+HGGDBnCX//6Vx588EEWLFjgkv0VEZHaQckuqXUCfCA2zN1RiIiIuM+ECROYOnUqjz/+OImJifTu3duxbvXq1axYsYLMzEy2b9/O119/zRNPPMHWrVvp0aOH0+v861//okWLFo7ld999l8jISBYuXMiyZcu47777mDNnDmvWrMHX19dRLzs7m7y8PAICAmp+Z8XrVcf5PHv2bBISEkhLS2P27Nn87W9/Y/LkyXTp0sWpLYvFAsCzzz7LgAEDMJvNXHXVVaSnp9OmTRuX7K+IiLifhjGKiIjIJbNYLERFRREfH8/YsWPLrZ85cyapqamVvsZjjz1Gv379mDVrllP5xo0bufbaa+nTpw9z5swB7L054uPjiY+PJywsjOTkZEf9119/ncGDBwOwZ88eZs+eXcW9q326dOnC4cOHHctZWVn4+flhMBjYunUr/fv3B2DgwIEkJSU5bWswGLjjjju4/fbbycrKAiAyMhIAk8mEwWAgPT2dwsJChg8fzujRo8nPzwegV69ejqSBSHWpyvlsNpvx8/Ojc+fOjnVNmjS5YFsWi8XRyys+Pp61a9dW896IiEhtpmSXiIiIXJYJEyZgsVgIDg4mMTHRUW61Wtm5cydt27a94LZbt27FbDbz9ddfs337djIzMx3rWrduzYYNG/jmm2/49NNPKSgoYOjQoVgsFhISEmjdujVdu3YFoKSkxCnx1bFjR7Zv347NZqv+HXajxMREoqOjHctpaWlEREQA9t5XQUH28feBgYFkZ2c7bTt37lw2bdrEHXfcwcsvv+woLygo4L333uP222/n2LFjpKens2rVKgYPHsx7770HQEREBPv27avhvZO6pirnc0lJCSdPnmTjxo2O5O2FnHndevXqATqfRUTqIiW7RERE5Iqc30vju+++o127dpVus2XLFgYOHAhA//792bZtm2NdeHi448OpyWTCaDx7m/Ltt9/So0cPDAYDYJ/n56677nJ67datW/PDDz9UbadqiYULFxIfH0/z5s2JjY2tsE5ISAg5OTkA5ObmEhIS4rS+YcOGAAwfPtzpuDz44INMnz6d4OBggoOD6dWrF76+vlx33XWkpKTUyP5I3VYd5/OMGTO47bbbWL58OZ06daq0vZUrVzJixIjqCF1ERDyUkl0iIiJyRc7vpZGamuoYJnchF+u9AbB+/XratGmDn5+fo+zcD69Wq5XPPvuMG264wWk7b+q9cab33IwZM5zKo6OjycjIAKB79+5s2LABgISEBHr27OlUNzc3F7D/P0VFRQH23l6dOnViyJAhALRr144jR45gs9nYtWuX4/8vIyOj0h56IpejOs7nuLg4EhISGDduHL169aq0vTVr1nDjjTc6lnU+i4jUPZqgXkRERC7LwoUL+eKLL4iLi7tgL43du3fz8MMPO5UNHTq0XO+N8yeM/umnn3j55ZdZtWqVU3lCQgJ//vOfAfj4448ZPnx4Ne2NZwkNDaWgoACApk2bEhMTQ79+/YiJiaFHjx4cPXqUpUuXMnnyZO69916OHz+Or68vixYtori4mGeffZbevXuzbt067rnnHiZMmMDo0aO57rrr8Pf3Z/ny5QBs3ryZN954w527KnXA5ZzPL774IhaLhebNm/POO+8A8Oqrr7Jo0SIMBgPHjh3jj3/8IydOnMDHx4fg4GBHOxaLhQkTJrhlH0VExD2U7BIREZHLcubJaudr27YtH3/8MQCdOnWqcILzb7/9luXLl3PTTTexYcMGbr/9dse6oqIixo0bx/z5852eArh//35atGjhGOKYkpKCxWJh6dKlJCcns2DBAiZOnEhGRgZ9+/at5r11vTMT8l/I8OHD+eKLLxg8eDDTpk1j2rRpjnVNmzZl8uTJAHzyySflti0qKipXds8993DPPfc4lrOysggJCSEwMLAKeyFiV13n8/PPP8/zzz/vtO3kyZMd689o1KgR69atcyyXlpZy7Ngxp16oIiLi/ZTsEhERkWrRtWtXp4nQK3LNNdewaNEi+vXrxw033ECTJk0cvTcaNWrE7t27eeCB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SUmhQYMGdO3alfz8fAAGDBjAlClTjtZLkCTpiBzJuXDXrl20bt2ali1bsnLlSqDi+bFbt26A50IdfQfrrfjAAw9QWFhY7WP86Ec/on///jz44IOV1uXn59O3b1/69OnDfffdB8ATTzzBoEGDCIfD7N27l6KiIi644AJyc3O57rrrAFi8eHH5F6BSTR3p/vzOO+/Qu3dv+vTpw29+85tK67du3coZZ5xBWloaACtXrqRt27aEw2GuueYawH1XCirDrmPE7NmzycrKKl9etmwZ7du3r/H9r776as477zwGDBgAwN69e9myZQvvvPMOW7duBaB9+/blwzgkSaprjuRc2LhxYwoLC/n0009ZtGhRefugQYO47bbbOOusswDPhYqNA/VWLCsrY/78+XTu3PmA9/3www9JSUlh5syZzJkzh40bN1ZYn5OTw7vvvsusWbOYPXs2q1evZsGCBbz55pvk5eWRmprK1KlT6devHzNmzCA1NZWFCxeSnZ3NnDlzHMarQ3Yk+3PHjh15++23mTVrFn//+9/ZvXt3hfWNGzfmjTfeoHfv3uVtF154IXl5eTz33HMA7rtSQBl2BdxTTz1FOBzmxBNPpGfPnof9OBMmTCA/P5+f/exnANx///1cdtllvPjii5x66qm1VK0kSbWvNs6FDzzwALfeeiujR4+mf//+5e1vvvkmkydPZsyYMbVTrHQIvtlb8eOPP+bkk0+u9j7vv/8+AwcOBCA3N5ePPvqowvp9PRZLS0s54YQTmDp1Krt27WLgwIHl+3lmZia7du0Coj0bmzZtCkSDh6+HwdKhOJz9+YQTTqBevXoAJCcnk5RU8eNtamoq6enpFdpef/11+vfvzwsvvFDe5r4rBY9hV8Dt+6bk/vvvr9CelZXFqlWravQYxcXFAKSlpXHccccB0K9fP6ZPn861115Lr169AFi1alW137xIkhQPtXEuzM7O5o033uChhx6iS5cuwP7zY9OmTWnYsCHguVCx9c3eioWFhXTo0KHa+2zbto0mTZoA0V4v27Ztq7TNxIkTyc7OplmzZmzatIlQKMRbb73FihUrmDdvHllZWcycOZPs7GxCoRAZGRmAPRt1ZA5nf97njTfeoFOnTjRo0KDa7dq2bUtBQQFTp07liSeeYMuWLYD7rhREhl3HqPT09ArdfEeMGMHUqVMZPnw4b775JgB33HEH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", + "image/png": "iVBORw0KGgoAAAANSUhEUgAABLsAAAMkCAYAAABQkSLjAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAADZUklEQVR4nOzdd3hUVf7H8feUQHpCQg2EJCQQQwnJ0puEYmF3ARGxouiCa3dx7Qq77AooupZ1VVx/4IooiLLsIi4ooMQARkKLICWFEnqUEtLrzO+PkUBICCXJtHxez8Mjc+6Ze773eLlz5zvnnGuwWq1WRERERERERERE3IDR0QGIiIiIiIiIiIjUFyW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNtQsktERERERERERNyGkl0iIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNswOzoAZ1aaV8ipXQccHYbbaBbTniZ+3hetl18Gmbl2CKgGUf7g6+GYtkVERERERESk7pTsqsWpXQdYMXqKo8NwGyOWTqdV76suWi8zFyatt0NANZgzAOKCHdO2iIiIiIiIiNSdpjGKiIiIiIiIiIjbULJLRERERERERETchpJdIiIiIiIiIiLiNpTsEhERERERERERt6EF6sUtpD2fQMHuZAxmDwwmM55tryJk/Az8uw9zdGgiIiIiIiIiYkca2SVuI2T8DOIX5RM7Lxuf6H7smXkDFQWnHR2WiIiIiIiIiNiRkl3idoweTWl+zUQsxfkUH810dDgiIiIiIiIiYkdKdonbsZQUcXzVHIze/niGdHR0OCIiIiIiIiJiRy6T7Cot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tA6fTn3I2bD0bN3kf9OkuX5uFBE5n8EAEX7QOVCJrobWzge6NFOiS9xDsKftuhHuq0SXiIg4D5dMdknjU5C+Ab/YoQD4dR1MYebmym0ezUOxlpVQUXgak28QxUfS8YrojsFgwL/bUAoyUgDI3fYNvjEDwaDTXkRERERERMRd6Vu/uISKghxM3raVTo1eflQU5FRu8+08kB0PxXDg3QcIHnr3BeueWP0+wUMn2Dt0EREREREREbEjJbvEJZh8AqkozAXAUpSHyScQgIrCXHK++zdd380g8tn/cPSTaTXWLcjYhGdoZ4xNPB11CCIiIiIiIiJiB0p2iUvw6dSbvO1rAMjbkYR3VI9fthgwevpgMJkx+QZRUZBD0zYdKdq/DavVSt72Nfh07E3RgR/JTV1FxrTrKdyXytFPZzjuYERERERERESkwbjk0xil8fHp2IsTX39A2rOD8I+/jrKTR8ndupLgIXfiE92P3U8PAEsFofe+idGjCUFX30baMwNp0jyU8MkfYvRoQvNhdwOQPnU4bW5+3rEHJCIiIiIiIiINQskucRnt73+7ymvvDnEAhNz6J0Ju/VOVbc2H/47mw39X4346vbC6QeITEREREREREcfTNEYREREREREREXEbSnaJiIiIiIiIiIjbULJLRERERERERETchtbscjID33iIsoJiNjw/19GhVHNH5nxW3PAnTv64r0HbifKHOQMatIla2xYRERH3l5iYyD333ENYWBhhYWHMmzevyvb58+fTpk0bhg8fzqBBg9i6dSu7d++mXbt2VeodPHiQu+66i9LSUt555x26d+/Oa6+9xquvvsoDDzzAlClTAHjooYd4+eWX8fHxsdsxioiINFZKdjWg1v27EPf4zQTHdgDgxLa9pP7tU44l73BwZDZxj99McPdIvr7rxUuq/3HUnQ0ckY2vB8QF26UpERERacQmTpzIlClTePTRR0lOTqZfv36V25YtW8aiRYsA+Oyzz3jmmWdq3MesWbN44403CAkJ4f777+ff//4348ePJy4uju+++66y3siRI1m0aBG/+13ND9ARERGR+qNpjA2k3fAeXLNgCgdXb+bTX93Hp7+6j4OrN3PNwim0G/arGt9jMNXf/w6D2VRv+xIRERFxZ127duXw4cOVr0+ePImnpycGgwGA1q1bX/C9mZmZdO/enRYtWlBQUABAy5YtMRqr3tddffXVfPXVVw0QvYiI+0lMTCQiIoKEhAQmTJhQbfuMGTPIyMiodR+PPPIIgwYNYubMmVXK161bR9++fenfvz+vvvpqlW1vvPEGw4cPv2DZrl27mDVr1pUcktiZkl0NpM/035H5WSI7Zn9OWV4hZXmF7Jj9OXsWf0vv6bZf9G5KeYfYyWP59eczGL/3Y5p3jwTAw8eThPce546M+dzw7euEJHS/aHut+3Xhjsz5dBo/nJs2zmbU6r8B0ObqWH771SxuT5vHqK9fpf31vQBof30vuj06hrZD4rgjcz53ZM7H2KT2gX53H11McPdIDCYjt6d/SGB0qK3t/l24++hiwn5r+zXUq2Ugdx34BA9fryvrPBERERE7Sk5OJioqqvJ1ZmYmYWFhl/Rei8VS49/P5+3tzalTp648SBGRRmbixIkkJiYSEBBAcnJyZbnFYmHbtm107Njxgu/dtGkTZrOZtWvXsmXLFrKzsyu3dejQgaSkJL777ju++OILCgsLASgrKyM1NbXKfs4vi4mJYcuWLVit1vo5SGkwSnY1AP/IEPzCWrHvv+urbdv7n3X4h7fGv0MbAKLGJbD+8Xf4OOpOTvyyFlbEDQPZ+5+1LLhqAtv+8R+Gvv8U3q2DLtqu2aspzeOi+O/Vk/lixNP4hbdm+Lxn+PGt/7Kw8z1snvERg2c/RlCXcA58uZHtb/6Hw2tS+TjqTj6OuhNLafklHZ+1wkL2hl20GdgNgDaDupG77yhtBna1vR7YjRPb9lKWX3RJ+xMRERFxhLlz55KQkEDbtm2Ji4u7on2cO4Lr/NFcIiJSd+ePvv3hhx/o1KlTre/ZsGEDQ4cOBWDw4MFs3ry5cltISAhNmjQBwGQyVV6758+fz2233VZlPzWVdejQgR07nGNpIrkwfSI3AM8gPwCKsk9W21b0k+0XPc9g20roafNXcTrjMFaLpTLZdOz7nRxYkYK1wsLexUmc2plF+Mh+1fZ1PoPRyOaZH1NeVEJFUSkRo/uTvWEX+5clY62wcPibrRxYuYnIcYPrfIzH1v1YJbmV+rdPK5NfrQd05ej6H+vchoiIiEhDOjNqYPr06VXKo6KiyMrKuqR9REZGsm3bNo4fP17r4vOFhYUEBgbWJVwRkUbp/NG3GRkZhIeH1/qenJwc/P1t37n9/PzIycmpVmfVqlVERkbi6emJxWLhq6++4rrrrqvcXlMZQFhYGOnp6Vd+QGIXSnY1gOKTeQB4tao+GsurZTNbnRO5ABQc/rlanYJDVcvyD/58SSO7yotKKPmlbQDvNsHkn7+vrGy829R99fej67bTqm9nmvh7498hhH3/XY+piRnvNkG0GdiVo2u317kNEREREUcICgqqnNYCMH78eFauXMltt93G119/DcDjjz8OwNNPP82jjz7K6NGjK5+8+OGHH/L444/zwQcf8NRTTwGQlJTEtddea+cjERFxXZcy+nbnzp0kJCRU+fPSSy8RGBhIbq7tO3deXl61HxsOHTrEiy++WLlm15IlSxg1alSVOjWVievQ0xgbQO6eI+QdyCZiVH+OnTfCKWJ0f/IOZJO79ygAVkv1ub4+7VpUee0b2oKft1w8c2w9b52IwqMnaN2vy3n7aknh0RM11r8cJ3fsx2qx0Pne3/LTxt1YLRaOrvuRTrcPx7tlM37auPuK9y0iIiLS0M58KbqQUaNGsXr1aoYPH85HH31UbfuZL0jt27cnMTGxyra77rqLu+66q0rZsmXLtKixiMhlOPPE3PN17NiRJUuWANC5c+dq12CAjRs3snDhQkaOHElSUhI333xz5baSkhLuvvtuZs+eja+vLwBpaWkkJiYyf/58UlNTmTNnDtnZ2dXKJk2aRFZWFgMGDGiYg5Z6o5FdDSTlTx8QdcsQutw3Eg9fLzz8vOl832+JunkIKVP/Vet7W/ftTOi1PTGYjHS4cRDNOoex/3/fX3YM+5Z+R6s+MYT9pg8Go5G2Q+IIva4nexYnAVB0/DQ+bZtf8VMgj323g86//w1H19lGcR1dv53Ov/8NP21Op6Kk7Ir2KSIiIuIM7rrrrmpP5KqLt99+u/JLlYiIXLnu3buTlpZWa51evXpRUlLCoEGD6N69O61ateLYsWO88sorLFiwgJ07d3LfffeRkJDA4cOHef7551m1ahVffvklcXFxTJo0qcYysD3EpGvXrvY4VKkDjexqIAe/2sjq8TPp/sebiHvSlkU+sW0vq8fPrEwOXci+/64jctxgrn77DxQcPcGaSX+j8MiJy44hb/8xvvndy/zq2TsY8PpDFBz6maSH3+TkLwvh71+WTIcbBnLrj+9jMBj4JHbiJS9SD3B07XbCf9uPo+tso9eOrvuRJv4+Wq9LRERERERErlhto2+NRiOxsbFkZGTU+kTGt99+u8rr1q1b8+STTwJwzz33XPB9q1evvmDZrl276NGjBwaD4WKHIA6mZFcDOrpue62JrcW9H6xWtm7y2zXUvLhjyTv4OOrOauWH16RyeE1qje8pzcnny7F/vqT9G355QsW5ybC0D1eS9uHKytdF2af4oM1NlxG1iIiIiIiIyOWpaXqjPcTExBATE+OQtuXyaBqjXJJmXcKwlJXXuKC+iIiIiIiIiIiz0MguFzI68XV82zWvVn5w5WaSHnyjzvsf/vHztOpzVbXysvxijB4mNs9cQGluYQ3vFBERERERERFxDkp2uZClCY816P5X3zGjQfcvIiIiIiIiItLQlOwSp5NfBpm5jmk7yh98PRzTtoiIiIiIiIjUnZJd4nQyc2HSese0PWcAxAU7pm0RERERERERqTstUC8iIiIiIiIiIm5DyS4REREREREREXEbSnaJiIiIiIiIiIjb0Jpd4hbSnk+gYHcyBrMHBpMZz7ZXETJ+Bv7dhzk6NBERERERERGxI43sErcRMn4G8YvyiZ2XjU90P/bMvIGKgtOODktERERERERE7EjJLnE7Ro+mNL9mIpbifIqPZjo6HBERERERERGxIyW7xO1YSoo4vmoORm9/PEM6OjocEREREREREbEjl0h2lZaWMnXqVEJDQ/Hy8mLo0KGkpKRgMBhYunSpo8MTJ3FkwVRSbw9k+73hFO77gagpX2Dy9nd0WCIiIiIiIiJiR06/QL3VamXcuHGkpKQwbdo0oqKiWLBgAWPGjAEgPj7eIXGZPJsw+ptX8WoZyMdRdzokBqkq5PYXaD3mCUeH4VAWK3x9BD7dB2mnwWSAfi3hlg7QPcjR0bmX5J9s/bzlhO119yC4OQIGtASDwbGxiVyufXmwaB+sPgLFFdDeB24Mh9+GgqfJ0dGJXJ6cUliyH5YeOFv2zi4YFwEtPB0WloiIAJuP2+45znjgOxgXDkPa6B5a6pfTJ7vee+89li9fTmpqKl26dAEgISGBiIgIgoKCaN++vUPiin/yFvIPHcerZaBD2hc5X7kFpmyxfVk1ApZfylcfhZVH4LEucEekIyN0D1YrvLkT5u+p2s/f/wzf/QS3RsDjXfVhLa7j22Pw9EZbsvzM+ZyRCy9tg88PwDv9wNfDoSGKXLJDBfD79fBTcdXyf2XA4v0wuz9EBzgkNBGRRm9uOszeDcZz7pM3H4eNx+E37eDP8VW3idSF009jnDVrFuPHj69MdAGYTCYiIiKqjer6y1/+gsFg4Mcff2zQmIJjO9B2SBw/vv3fBm1H5HLMy7QluuDsF1awfYEFeH2H7cNE6uarw7ZEF9Tcz5/sgy8O2j0skStyrBCe2QQV1qrn8y+nM7tybEkvEVdgtcLjKXC8uIZtQH4Z/OF7KLNU3y4iIg1rfbYt0QVn75vh7P3H/w7BJ3vtHpa4MadOdmVkZLBv3z7Gjh1bbdvBgwerJLu2bNnC999/T1hYWIPGZDAZ6f+3+/n+uTlYSssbtC2RS1VuufiHgxF9gNSHBXtrv3AagI/32L50iTi7JVm268eFTlcrtpGhNSUPRJzN5hOwJ69q4vZcFuB4Caw5as+oREQEYOHei4/aWrC3aiJMpC6cehrj4cOHAWjZsmWV8t27d5OVlVWZ7CopKeGhhx5i4cKFJCQkXHY7fn5+lJaWViuPNDfjKf+BVcq6PjiaE9v3kf39Llr361LtPXJhQ4YksKf81EXreUf3I3J64mXtO3rG5dW/kCFDEihMS66XfdmTZ4d4Os76vtY6FuDrA8U0HaT5G1fK6BNIlw+ya61jBTLzwLd1e8pzaq8r4mhRr6TgGRaLoZZ5txYrdPnt3eSsXWjHyEQuX+s7ZtB81GMYjBdeaM5aUc4Dry7g0Nv32jEykfrR9VPbLw9Nm2rxuYakfm4ARiNdPynAYKh9rM2xIgjsEEvJkTQ7Beb+XP18tliufDi2U4/sCg4OBiAzM7OyzGq18vTTT2OxWCqTXX/6058YP3484eHhDRqPX3hrou+6lk0vzG/QdkQul8F0aQvqXGo9qdnl9J/B3KQBIxGpHwZTk1oTXZX1dD6LCzCYPcB68Ztinc8iIvZlMJovmuiqrGvW9xWpH049sismJoaoqCiee+45PDw88PX1Zfbs2WzduhVvb2+io6NJTk5m06ZNvPTSS1fcTl5eXo3l2Sm7WTF6SuXrVr2vwqt5ADeufxMAo9mEh48Xt+54nzUTXyH7+11XHENjsGZNIq16X3XReqknYNJ6OwRUgzVrEokLdkzbdZFTCtd/BeW1DPs1AFGBJjaXlNgtLndTYbX186nqA0Gr8PeAUwcz8XDqnxNE4PnNsOrIxacMfL3wPbo0e88+QYlcoc8PwF9Ta69jMJl5/t5bueflW+0Sk0h96vm57b8lupdrUOrnhnHDajhceOGlEwCaGuHIrs34OHWWwrW4+vm8fv16Bg4cePGKNXDqr2Jms5nFixfTpk0bJkyYwOTJkxkxYgSDBw8mNjYWo9HIt99+y65du4iIiCA8PJxDhw5x3XXXsXLlynqPZ9+y7/h3/4f5fPgTfD78CdY//i5lhcV8PvwJft6SUe/tiVyqwCZwTdva/0FbgZsj7BWRezIZ4KZwW+LwQgzAmDCU6BKXcFN47YkuI9DJHzoH2ikgkTq4NgS8TbVfo00GGBVqt5BEROQX4yJqT3QZgd+EokSX1Bun/zrWvXt3kpOTKSwsJC0tjQceeICtW7dWTmF85plnOHLkCPv372f//v20a9eOr776imuvvbbeY6koKqXw6MnKPyUncsFqpfDoSS1WLw73cAwEe174H3XPYBjZ3q4huaXxURDpV/OXKSMQ5gt3d7R3VCJXJi4Ixl7guS5GbEnbKXFwCTMdRRzO0wxT42x/P/+UPfP6j11tn5UiImJfN4VDbLML30O38oL7ou0clLg1p092na+oqIi0tLQqT2J0lGPJO/g46k5HhyEC2D4g/jUIhrap+qQTbxPc0QH+3lejjeqDjxn+byDcEAZNzulPD6Pt16i5A8FPSw2IizAY4OlYeLQzBDWtuq1Hc5g7SKO6xLVc0xZe7wNR/lXLQ31gRg+4RSOcRUQcoqkJ3u5nm2niec5zREwG27X7X4P0Y4TUL5cbJLht2zYqKioumOzav3+/fQMSuznw3iMU7UvF/1cjaDPuucry4qOZHPznw1jKSmg16jEC+4zi6KIXyE1dRZNWEYQ/MheDyUzW7AcoPrQb7w7xhE58zYFH0nBae8FLveB4MVz/y0zer64DL5f7l+7c/Dzg+e62BMGQFbayL6+FAK15LC7IaIC7ouD2DtD3C1vZf4dBOx/HxiVypQa2ggEtYU+e7fMwsAlEB2iEooiIo3mZ4clu8GAM7MqxLaUQ5V/9BzeR+uByX4H79OmD1XqRlXTF7RRkbMJgNBP94lr2vHQTZTnZeAS2AuDoJ38h4olPMPsGAlB28iiFe7cS/WISP/3vLXJSltEkKASjR1OiZ6zh0L+eoHDvVrw7OH50YENpfs6vIkp0NZxzR3Ap0SWuznzOSEUlusTVGQy2L1Dnj/ASERHH8zFDz+aOjkLcnSY1iUsoSN+AX+xQAPy6DqYwczMAlrJSSo8fZP8bd5E5YzRlOdmU/JyFZ/suAHiFdaMgLZmS7H14hXWrLMvfneyYAxERERERERGRBqVkl7iEioIcTN62n2eNXn5UFOQAUJ57nKKsHwmfPI9WIydzbPGLNG3VgYK077FaLOTvSKKi8DSe7aLJ+/FbAPJ+KRMRERERERER96Nkl7gEk08gFYW5AFiK8jD5BP5SHoBXWDfMvs3w7TKI4sNpeAS2JLDvGNKnDqUsJxtzQEu8O8TTtGU46VNso8M8Alo66lBEREREREREpAEp2SUuwadTb/K2rwFsI7O8o3oAYPL0wdjEE0tZCUVZP9KkZTgALX/9INEzEmnSIoyAHr8GIOSOv9Jp+jeYPH3xj7vWIcchIiIiIiIiIg1LS1eLS/Dp2IsTX39A2rOD8I+/jrKTR8ndupLgIXfSavTjpE8dhsFoIvwPHwCw58UbqSjMxbfLIHyv6oe1vIz0P1+DwWii2YCbadIi1LEHJCIiIiIiIiINQskucRnt73+7ymvvDnEA+McNxz9ueJVtkc8uqfLaYPYgekZiQ4YnIiIiIiIiIk5A0xhFRERERERERMRtKNklIiIiIiIiIiJuQ8kuERERERERERFxG1qzS5xOlD/MGeC4thuDxMRE7rnnHsLCwggLC2PevHlVts+fP582bdowfPhwZs6cyYoVK4iLi+Mf//hHlXr33nsv6enpVFRU8P7779OpUyeGDBmC1WoF4J133qFjx44kJCRgNpsJCAjg008/pbCwkOnTp/Paa6/Z7ZhFRERE3NWl3tsNGzaMO++8k4MHDxIYGMhnn31GkyZNKuvVdG+XmZnJww8/TElJCY899hi//vWvuf/++5kzZ469D1NE5JIp2SVOx9cD4oIdHYX7mzhxIlOmTOHRRx8lOTmZfv36VW5btmwZixYtIjs7my1btrB27Voee+wxNm3aRM+ePSvrvfPOO3h4eLB27VreffddXnvtNUwmE6tXr67S1rfffovZbOaFF15g5cqVjBo1ipycHPLz8/H19bXbMYuIiIi4q0u5t9u2bRve3t58++23zJw5k5UrV/Lb3/62sl5N93Z/+ctf+OSTTwgMDKys16JFC/bs2UNkZKQ9D1FE5JJpGqNII9e1a1cOHz5c+frkyZN4enpiMBjYtGkTgwcPBmDo0KGkpKRUea+HhwcA+fn5dO3aFQCr1UpCQgKTJk2iuLgYALPZlle3WCyVN0V9+vQhMTGxQY9NREREpLGp7d4uJCSEiooKAE6fPk1QUFCV955/b1daWsrBgwe56667GD16NNnZ2QAkJCSwYsUKOx2Rc0lMTCQiIoKEhAQmTJhQbfuMGTPIyMiodR+PPPIIgwYNYubMmVXK161bR9++fenfvz+vvvpqlW1vvPEGw4cPv2DZrl27mDVr1pUckohbUrJLpJFLTk4mKiqq8nVmZiZhYWEA5OTk4O9vm9vp5+dHTk5OtfcPGzaMhx9+mF69egGwePFiEhMTiYmJYe7cuQDs3LmTXr16sWrVKkJDQwEICwsjPT29IQ9NREREpNGp7d4uKCiI06dPExMTw/fff0/fvn2rvf/ce7vjx4/z448/Mm/ePCZPnsyLL74I6D5u4sSJJCYmEhAQQHJycmW5xWJh27ZtdOzY8YLv3bRpE2azmbVr17Jly5bKBCJAhw4dSEpK4rvvvuOLL76gsLAQgLKyMlJTU6vs5/yymJgYtmzZUrmciEhjp2SXSCM1d+5cEhISaNu2LXFxcTXWCQwMJDc3F4C8vLwqw9fP+Prrr1myZAnTpk0DoFmzZgCMGjWKHTt2ANC5c2c2btzIuHHjqq0hISIiIiJ1dyn3ditXriQiIoJdu3Zxww038Mknn1Src+69XUBAAN26daNZs2YMGjSItLS0Bj4K13L+KLoffviBTp061fqeDRs2MHToUAAGDx7M5s2bK7eFhIRUrqFmMpkwGm1f1+fPn89tt91WZT81lXXo0KHy/luksVOyS6SROvOL1PTp06uUR0VFkZWVBUCPHj1ISkoCYM2aNfTu3btK3ZKSEgACAgLw8vICbEkxsP2qGBERQVlZWeUvTAEBAXh6egKQlZVV669eIiIiInLpLuXezmKxVE5dDAoKqjZq//x7Ox8fHzw9PSkpKeHHH38kPDwc0H3cGeePosvIyKjsowu5lJkTq1atIjIyEk9PTywWC1999RXXXXdd5faaykAj7kTOpQXqRaSKoKCgyiHTrVu3JjY2lkGDBhEbG0vPnj05duwY8+fP58knn2TMmDEUFRVhMBh4++23ARg+fDhNmjQhMDCQjz76iKysLCZOnIjRaKRZs2Z89NFHAHz//fe8+eabDjtOERERkcbg3Hu7a6+9tnIEmNls5rPPPrvovd3jjz/OsGHDMJlMfPDBB4Bt3aqJEyc66pAcbu7cuaxevZqBAwdecBTdzp07efDBB6uUXX/99dVmTpy/yP+hQ4d48cUX+fzzzwFYsmQJo0aNqlKnpjIRqUrJLpFGKCEhgYSEhAtuHzVqFKtXr2b48OFMnTqVqVOnVm5r3bo1Tz75JADLly+v9t4NGzZUeR0QEMC3335bpezkyZMEBgbi5+dXh6MQEREREbi8e7slS5ZU217bvd3w4cOrLIxeXl7OTz/9VGVEU2Nz5smX5+vYsWNl/3bu3LnGhzFt3LiRhQsXMnLkSJKSkrj55psrt5WUlHD33Xcze/bsyieWp6WlkZiYyPz580lNTWXOnDlkZ2dXK5s0aRJZWVkMGDCgYQ5axMUo2SUi1dx1110Nuv+goCBef/31Bm1DRERERGzq897ObDZXPoRIqurevXvlIv4X0qtXLz744AMGDRrEddddR6tWrSpH1zVv3pydO3dy3333AfDxxx/z/PPP8/zzzwO2xOOkSZMAaizLzMysfEK6SGOnZJeIiIiIiIjIJahtFJ3RaCQ2NpaMjIxa1zQ7M0X0jHNnTtxzzz0XfN/q1asvWLZr1y569OiBwWC42CGINApKdomIiIiIiIjUg5qmN9pDTEwMMTExDmlbxBnpaYwiIiIiIiIiIuI2lOwSERERERERERG3oWSXiIiIiIiIiIi4Da3ZJU4nvwwycx3TdpQ/+Ho4pm0RERERERERqTslu8TpZObCpPWOaXvOAIgLdkzbIiIiIiIiIlJ3msYoIiIiIiIiIiJuQ8kuERERERERERFxG0p2iYiIiIiIiIiI29CaXeIW0p5PoGB3MgazBwaTGc+2VxEyfgb+3Yc5OjQRERERERERsSON7BK3ETJ+BvGL8omdl41PdD/2zLyBioLTjg5LREREREREROxIyS5xO0aPpjS/ZiKW4nyKj2Y6OhwRERERERERsSMlu8TtWEqKOL5qDkZvfzxDOjo6HBERERERERGxI5dJdpWWljJ16lRCQ0Px8vJi6NChpKSkYDAYWLp0qaPDEydwZMFUUm8PZPu94RTu+4GoKV9g8vZ3dFgiIiIiIiIiYkcusUC91Wpl3LhxpKSkMG3aNKKioliwYAFjxowBID4+3m6xDHzjISLGDMRSVl5Zlnjvqxxek2q3GKRmIbe/QOsxTzg6DIeyWmHDz7B4/9myl7bBTeEQpbyfuKB9efDZfliXDeUWiA6wnc/9W4LB4OjoRC5PTgn89wB8eQhySqG1N4xuDyPagqdL3JGJiL1ZrLbPwH/vP1v26o8wLhza+zoqKve05QR8tu/s67+mws3hcFWggwISkTpxiVur9957j+XLl5OamkqXLl0ASEhIICIigqCgINq3b2/XeNI/Ws2G5+fatU2Ri7FY4cVt8J8sMJ6TBFiy33aDNCXO9qVKxFUsPwjTUgErWH4pO14Ma7PhN+3gT/FgUsJLXERmLjzwHZwqPVt2ogR+PAUL98K7/SGoqePiExHnU26BKVtg9ZGq03E+2WtLyszoAcNCHBae27Ba4c2dMH9P1X7+4gB8fgD+2AVuj3RYeCJyhVxiGuOsWbMYP358ZaILwGQyERERUTmqKzw8nKuuuoq4uDji4uL46quvHBWuiEMs3GtLdIEt8XWGBbAC01Nh+0kHBCZyBXafhmlbbeey5ZzyM3//3yGYr+dPiIsorYBHvofTpVXLz1yq9+fBs5vsHpaIOLn/S7cluqDqZ6EVqLDCc5ttI6ClbpYdtCW6oOZ7jtd2wPc/2TsqEakrp092ZWRksG/fPsaOHVtt28GDB6tMYVy8eDGpqamkpqZy3XXXNVhMHW4cxG07/8UNSW8Q+4cbMZicvhvFzVVY4aM9tdcxAJ/sq72OiLNYtPfidT7eY/vVW8TZfX0Ufi6u+iXqXBZg8wlIP23PqETEmRVX1P5ZaMU2IulT3dvVidVq+/GstoHiRmz3HCLiWpx+GuPhw4cBaNmyZZXy3bt3k5WVVS/rdfn5+VFaWlqtPNLcjKf8B1Yp2zl3OZtemE/xyTyCYzsw+J3JmJo2YevLn9Q5Dnc3ZEgCe8pPXbSed3Q/IqcnXta+o2dcXv0LGTIkgcK05HrZlz15hsfS8ZWNtdaxACv2FvK3/s3sE1Qj0fXTYgCaNvV0cCTupfO/jmHyrf1cPVUKzWMHUZSRYqeo3J/O54YROnk+AX1vxGC68G2X1Wph6P1/4eclL9kxMhFxVj5dE+jw59pnqliABVuO8KdeEfYJyg15tAjjqnfSa61jAb77yYKnjz/W8jL7BCZST1z93s5iufJftp1+SFJwcDAAmZln56tYrVaefvppLBZLlWTXHXfcQWxsLA8++CA5OTkNEs/J7fsoPpELVisnftjD1r8tImL0gAZpS+RSGZt4XVI9g4cWhBHXYGhyaR/Il3ruiziSsYnXxZ+oYLFibKrzWURsLvneTp+DdXLJ/WwwYjDrPlrElTj9yK6YmBiioqJ47rnn8PDwwNfXl9mzZ7N161a8vb2Jjo4GYO3atYSGhlJSUsLkyZN5+OGH+eijjy6pjby8mie7Z6fsZsXoKbW/2WKtfdyrVFqzJpFWva+6aL3UEzBpvR0CqsGaNYnEBTum7bo4WQLXr6y6Vtf5DEC4v4nNJSV2i6sx6Pm57b8l6td6dXsiZOSeXdOoJgZg1/qVtNJ9fr3R+dww3txpmyZT6/lsMvHuC8/w6w+esVtcIuK8DubDmG9qr2MEeoQ2I1XX7CtWWA7Dv4TSiwweCW4KhTkn9CRocTmufm+3fv16Bg4cePGKNXD6kV1ms5nFixfTpk0bJkyYwOTJkxkxYgSDBw8mNjYWo9F2CKGhoQA0bdqUBx98kPXrGyZbEj6qPx5+3gA0iwmj++Pj2P+F6017E/cS1BSGtK79H7QVuCncTgGJ1NFN4bUnBozAwFYo0SUuYUz7iydufc0wVE9VE5FfhPpCz+Da7+0swE2awVgn3mb4TWjt/WwAxoVffICuiDgXpx/ZBdC9e3eSk6smlN566y0GDx4MQEFBAeXl5QQEBGC1Wvnkk0+Ii4trkFiuuvs6+s36PUYPE0XZOexZ/C3b/vGfBmlL5HI80hk2Hof88uojvAxA50C4ob0jIhO5fL8NtT1xcdvJ6kkCowG8TfCHzg4JTeSyhfrCPR3hXxnVtxmwnePPxIKnyd6RiYgze7wr/G4dlFTU/ICL3s3hGiXJ6+zeTrAuG07U8CARIxDuC7d2cERkIlIXLpHsOl9RURFpaWlMnjwZgOzsbMaOHUtFRQUVFRV07tyZd955p0Ha/vLGPzfIfkXqqp0P/GsQvLTNlvQ6w2yAEe3giW7g6ZL/4qUxamKCt/raHvf9xUEoO+fuMy7IlhgI93NcfCKX68GroFkTW8Lr1DnPxGnrDY921qguEamuYwDMHQiztsMPJ8+WNzHC6Pbwhy5gdvp5Os6vpRf8ayC8uA2+++nsj2xGgy2Z+FQ38PVwaIgicgVc8qvvtm3bqKioqFycvkOHDmzdutXBUYm9lOedJOPP11B8OI34RflVtpWd/pkDb/+e8oIcgq6+jRbX/Z7sZX/nVNJCMJkJ/8MHeLaJclDkDS/MF2b3hwP5kJ5rS3TFBUGg1tMUF+Rlhue7w8MxMOxLW9niobZfWEVcjcEAt0fCzRHQ9wtb2ZwB0D1IU2NE5MI6/ZLw2ptn++NhhB7BSr7Ut9be8Pe+cKQQduXYRt3GBkFz13yAnYjgosmuPn36YLXWtvqFuDOTlx8d/7KKvS/fXG3b0UV/pd2kN2jaMqyy7FTSQqJfTqZgdzLHv3yXdvf8zZ7hOkR7X9sfEXcQ0OTs35XoEld37igMV3wgiog4Rgc/2x9pWCHetj8i4vo08FVcjsHsgdkvqMZtJYfTOfzhM6T/+VqKD6UB4NE8FGtZCRWFpzH51vw+EREREREREXEPLjmyS+RC8neto/Pft2G1Wjj84bNEPrMY384D2fFQDGAl+qXvHB2iiIiIiIiIiDQgjewSt+LZvgtN20TiGdKRisLTVBTmkvPdv+n6bgaRz/6Ho59Mc3SIIiIiIiIiItKANLJL3ErTluGU5x7HaqnA2NQbMGD09MFgMmPyDaKiIMfRIYqIiIiIiIhIA1KyS1xS+tThFO7bSvrU4YTcNo383cm0vvFJWt88hT0v3oi1opzQe9/E5O2HT3Q/dj89ACwVhN77pqNDFxEREREREZEGpGSXuKROL6yu8tq380AAvMNjiX4xqcq2kFv/RMitf7JbbCIiIiIiIiLiOFqzS0RERERERERE3IaSXSIiIiIiIiIi4jaU7BIREREREREREbehNbvE6UT5w5wBjmtbpL4kJiZyzz33EBYWRlhYGPPmzauyff78+bRp04bhw4czaNAgtm7dyu7du2nXrl2Vep988gnPPvssw4YNY86cOQBMnjyZ1NRUysrKKCgoIDU1lYceeoiXX34ZHx8fux2js7icvp45cyYrVqwgLi6Of/zjH1Xq3XrrrRw7doy8vDxCQ0P573//yxNPPMG8efN4/fXXGT9+PAAjR44kNzcXs9nMokWLCAwM5P7776/8/yMiIiIi4swu9f45OjqaW265BbPZTGRkJO+//z4Gg6Gy3meffcYrr7yC0WjkjTfeoG/fvk5xr6yRXeJ0fD0gLtgxf3w9HH304m4mTpxIYmIiAQEBJCcnV9m2bNkyhg0bBtg+JG666aYa93HNNdewatWqKmVvvPEGiYmJ/OlPf+LXv/41YEvALFq0qAGOwjVcSl9nZ2ezZcsW1q5di9lsZtOmTVXqffLJJyQmJvL73/++sl+ffPJJXnnllSr1lixZwrfffsvdd9/NggULMJvNtGjRgj179jTsQYqIiIiI1JNLuX8OCQlh/fr1JCUlYTQa2b59e5V6b7/9NklJSSxZsoS//e1vgHPcKyvZJSJiB127duXw4cOVr0+ePImnp2flryKtW7e+4HuDg4Mxm2seiLt06VJGjx4NwNVXX81XX31Vj1G7ptr6etOmTQwePBiAoUOHkpKSUuM+li1bxsiRIwFo1apVte0eHrbMeHFxMTExMQAkJCSwYsWKej0WEREREZGGVtv9s8lkqvzO0rRpU0JCQqq8Nzw8nIKCAk6fPk1QUBDgHPfKSnaJiNhBcnIyUVFRla8zMzMJCwur8343bdpE7969AfD29ubUqVN13qerq62vc3Jy8Pe3zVf28/MjJyen2vvz8/PJy8ujTZs2F2zj5MmT9O/fnzfffLPyAzwsLIz09PR6PBIRERERkYZ3se8q33zzDbGxsRw7doyAgIAq7x05ciTx8fEMHz6chx56CHCOe2Ulu0REGtDcuXNJSEigbdu2xMXF1eu+N2/eTHx8fJU5843ZpfR1YGAgubm5AOTl5REYGFitzldffcX1119fa1tBQUF89913TJ8+nddff72uoYuIiIiI2N2lflcZOnQo27ZtIywsjC+//LLKtlmzZrFr1y42btzI1KlTAee4V1ayS0SkAZ2ZBz99+vQq5VFRUWRlZdVp3+dOYQQoLCysMXnTWFxKX/fo0YOkpCQA1qxZUzkq7lzn9+v5LBYL5eXlAAQEBODp6QlAVlYWHTt2rJdjERERERFpaJdy/1xaWlpZfu697xmenp54eXnh7+9PQUGB09wrK9klIuIAQUFBFBYWVr4eP348K1eu5LbbbuPrr78G4PHHHwdg5cqVjB8/nhUrVjBhwoTK93zzzTeVC9wDJCUlce2119rpCFzHuX3dunVrYmNjGTRoECUlJfTs2ZNjx45VLkBfUVFBeno6nTt3rnz/K6+8wiuvvMJLL73Ea6+9RkFBAcOGDWPIkCG89NJLPPLII4DtiTYjRoyw/wGKiIiIiNSjc++fU1JSuPrqq0lISODQoUMMGzasyv3zXXfdRf/+/Rk6dCh//OMfneZe2WC1Wq12a83FZKfsZsXoKY4Ow22MWDqdVr2vcnQYIvWq5+e2/24adfnv/fDDDwkJCWH48OH1EstDDz3ErFmz8PX1rZf9OZO69DPUf1+fr7y8nPvuu4+5c+c2yP7tpa79LJdG/SwiIiL24CzfVa70Xnn9+vUMHDiQdevWMWDAgMt6b82P9xIRkQZ311131ev+3n777Xrdnzup774+n9lsdvlEl4iIiIjIGfV5/+yIe2VNYxQREREREREREbehZJeIiIiIiIiIiLgNJbtERERERERERMRtKNklIiIiIiIiIiJuQ8kuERERERERERFxG3oaozid/DLIzHVM21H+4OvhmLZFREREREREpO6U7BKnk5kLk9Y7pu05AyAu2DFti4iIiIiIiEjdaRqjiIiIiIiIiIi4DSW7RERERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtaoF7cQtrzCRTsTsZg9sBgMuPZ9ipCxs/Av/swR4cmIiIiIiIiInakkV3iNkLGzyB+UT6x87Lxie7Hnpk3UFFw2tFhiYiIiIiIiIgdKdklbsfo0ZTm10zEUpxP8dFMR4cjIiIiIiIiInbkMsmu0tJSpk6dSmhoKF5eXgwdOpSUlBQMBgNLly51dHjiRCwlRRxfNQejtz+eIR0dHY6IiIiIiIiI2JFLrNlltVoZN24cKSkpTJs2jaioKBYsWMCYMWMAiI+Pt3tM7Yb9ivinb8U/MoTy/CJ+fHcZO2Z/bvc45KwjC6Zy7LPpGMxN8QztTNSULzB5+zs6LHFT+/Ph3/vPvn55O9wUDh38HBWRe8ougv9knX09bSuMDYOuzcBgcFxcIuK8yizwzVFYdgB+LobAJvDrULguBDxd4s5XRESkbo4Xw9IDZ18/vxnGhkN8UOO5h3aJj/z33nuP5cuXk5qaSpcuXQBISEggIiKCoKAg2rdvb9d4QgZ3p98r97Hu0bc4lrwDs1dTfNo2t2sMUl3I7S/QeswTjg5DGoHP9tmSW+davA8+3Qd/7AK3RzomLnfz7TF4ZhOUW86WLT8IXxyE2zrY+rqxfFiLyKXJKYGHkiEt1zZ9wYLtv5tPwL/S4d3+0NrbwUGKiIg0oJSf4Y8pUFxxtmzVEfjqMIwMhSlxYGoE99AuMY1x1qxZjB8/vjLRBWAymYiIiKgc1VVcXMwDDzxAx44d6datG7///e8bLJ74p25l2xv/5ui67VgrLJTlF5GTdrDB2hMR5/H9TzBrO1ix/TnjTD7mtR2QdMwBgbmZPbnw9EZboqumfl64Fxbtc0RkIuLMnt4EGbm2v5+5Xpz575FCePR7sFhreqeIiIjrO1oIj22Akoqq5Wc++5YdhPfT7R+XIzh9sisjI4N9+/YxduzYatsOHjxYmex66qmn8PT0JD09ne3bt/PCCy80SDxmr6Y0j4vEq0UgY9b+nVu2zWHoB0/jG9qyQdoTEefyYWbtF07jL3Wkbhbts30o1/addF4mVOhLq4j8YleObQSX5QLbLcDefEj+yY5BiYiI2NHi/VBqqf0eesHe6skwd+T00xgPHz4MQMuWVZNJu3fvJisri/j4ePLz8/nwww85dOgQhl/mtLRq1eqS2/Dz86O0tLRaeaS5GU/5D6xS1iTQB4PRSNhv+rDqtukUnThN77/ew5C5T7Ls2icv9/AalSFDEthTfuqi9byj+xE5PbGhw6nRkCEJFKYlO6RtcX5GT1+6zD9Rax0LkHoSvJuHUJFXe125sJj3j2L2C6q1zs/FENylP0V7NtspKvfX9dNiAJo29XRwJO5N/dwwWt06jRZjnsJgNF2wjrWinDtnzOPwPx+0Y2QiIiL20emtXTRt1aHWOnllENL31+Rv+9pOUV05i+VCP2FdnNOP7AoODgYgM/PsUAmr1crTTz+NxWIhPj6ePXv2EBwczF/+8hd69uxJQkIC69ata5B4yvJtN6g75ywn/9DPVBSVsuXFBQR3i9C6XQ4UPSNR63VJgzN6+lx63aaXXleqMza9tEV1jJ6+DRyJiLgKo6cvWC9+U6zrhoiIuCvTJX7GXc73Glfl9CO7YmJiiIqK4rnnnsPDwwNfX19mz57N1q1b8fb2Jjo6mtTUVPbu3Ut8fDyvvPIKGzZsYOTIkWRmZuLvf/Gn8eXl5dVYnp2ymxWjp1QpK8srJP/gT2DV3JnLtWZNIq16X3XReqknYNJ6OwRUgzVrEokLdkzb4vzKLTDsSygor72epwmOH8jA88KDC+Qixn1je+Llxa60O9atpI0Wm643PX95qHBJSYljA3Fz6ueGsWgfvLK99jpGk5k/3nMLD758i32CEhERsaOJa2H7qQtP6T/juy8+o2OAXUKqk/Xr1zNw4MCLV6yB04/sMpvNLF68mDZt2jBhwgQmT57MiBEjGDx4MLGxsRiNRtq3b4/ZbOa2224DoE+fPjRv3pz09IZZeS3tw5XETPoN3iHBmJp6EP/UrRz/YQ8Fh483SHsi4hzMRhjVHmp7eIkR+G0oSnTV0djw2hNdRqBvC5ToEpFKI9pCk0u4sx1t34d4i4iI2M2N4bUnuoxA50BcItFVV06f7ALo3r07ycnJFBYWkpaWxgMPPMDWrVsrF6dv3rw5Q4YMYdWqVQCkp6fz008/ERUV1SDxbH97KYe/2cqolS8zbst7eLcKYs3EVxqkLRFxLhOioLlnzRdPIxDYFO7paO+o3M/o9tDJv+bEohFoYoJHOts7KhFxZv5N4KGY2uvcGQVt3X/mhoiINFLXtoW4oJrvoQ2A0QB/7GLvqBzDJZJd5ysqKiItLa0y2QXw7rvvMnPmTLp168att97K/PnzCQwMbJgArFY2z/iIT7pO5JMu9/DNPbM0qkukkWjuCe8PhF/VMN21e5BtWysv+8flbrzM8G5/GNKm+od1Bz/4Z3+IbgS/SInI5bkjEp7pBv4eVcu9TfDgVfDIRZJhIiIirszDCG/2hRHtbImtc7X3hXf602iW7XH6Nbtqsm3bNioqKqokuzp06EBiYqLjgpIGd+C9Ryjal4r/r0bQZtxzleXHV7/P8ZVzMAe2JGLyfEzefux4KAZzoO2JnJHPLKH05wMcnDsZgJIjGbS/720C+97ggKMQd9DGG94dAPvy4IeTtrJuzSDy4ksEymXwbwIv94JjRbDxZyizQKcA6BIIhtrmkopIo3ZThG3K+Xc/wRMbbWUrrwNPl7zrFRERuTzeZvjrr+DRzvD9T1BigUg/2w/zjeke2iU/9vv06YNVC8Q3KgUZmzAYzUS/uJY9L91EWU42HoGtsFaUc+KbeUS/tI7Tm5dzfNUcWo1+DI+gtnR6YXXl+81+QUTPSAQg7fkE/GKHOehIxJ1E+Nn+SMNq7QUjtcaOiFyGJiZIaHP2tRJdIiLS2DT3hN824ntol5zGKI1PQfoG/GKHAuDXdTCFmZsBKM89TpMW7TEYjXiFdaMgLRmAstPZpD17NYc+eKpKYrTs1DGMTX0weStDISIiIiIiIuKOlOwSl1BRkIPJ2zZHzOjlR0VBDgBm/xaUHM3EUlpM/o4kKgpOAxA9M4noF5OwlBaTu3l55X5yNi4jsNdIu8cvIiIiIiIiIvahZJe4BJNPIBWFuQBYivIw+QQCYDCZaDXmSTL+cj1F+3+oXKfL7NsMgMDeIyk6sKNyP6dTlhHQe5R9gxcRERERERERu1GyS1yCT6fe5G1fA0DejiS8o3pUbmvW70aiZyTi06kPAT1GYC0vw1JWAkD+7mSatooAoKK4gIrC0zQJDrH/AYiIiIiIiIiIXSjZJS7Bp2MvrGUlpD07CO+I7pSdPMqJNfMBOPDug6RPHUbejiSaDbiZisLTpD3dn7Rnr6bkcBqBfccAkLt1Jf5x1zryMERERERERESkgenZNOIy2t//dpXX3h3ifil/p0q52b85Ma9trvb+Zv3GQL8xDRafiIiIiIiIiDieRnaJiIiIiIiIiIjbULJLRERERERERETchpJdIiIiIiIiIiLiNrRmlzidKH+YM8BxbYuIiIiIiIiI61KyS5yOrwfEBTs6ChERERERERFxRZrGKCIiIpckMTGRiIgIEhISmDBhQrXtM2bMICMjo9Z9PPLIIwwaNIiZM2dedPu6devo27cv/fv359VXXwXgyy+/JCEhgYSEBIKDg0lNTeXkyZP06NEDX1/fyv3s2rWLWbNm1eFoHaeu/VxTf9S2vaysjJtvvpmEhAReeeUVwLX773I05Dld07laU1/XdJ43lv4XERFpKEp2iYiIyCWbOHEiiYmJBAQEkJycXFlusVjYtm0bHTt2vOB7N23ahNlsZu3atWzZsoXs7Oxat4eGhpKUlMR3333HF198QWFhIddffz2JiYmsWbOGDh060L17d/z8/Fi1ahV9+/at3FdMTAxbtmzBarXWfyfYQV36uab+qG37kiVL6N+/P4mJiWzevJmff/7Z5fvvcjTUOV3TuVpTX3fo0KHaed6Y+l9ERKQhKNklIiIil61r164cPny48vUPP/xAp06dan3Phg0bGDp0KACDBw9m8+bNtW7fsWMHTZo0AcBkMmE0nr1t2bhxIz179sRgMODh4UFQUFC19jp06MCOHTuu7ACdxJX084X640Lb9+3bR7du3QBbknDjxo2Ae/Tf5WiIcxqqnqs19XVISEiN53lj638REZH6pGSXiIiIXLbk5GSioqIqX2dkZBAeHl7re3JycvD3tz0JxM/Pj5ycnEvavmrVKiIjI/H09Kysu3TpUkaPHl1re2FhYaSnp1/iETmnK+nnyxUdHc23336L1Wpl7dq1nD59GnCP/rscDXFOQ9Vz9UJ9DdXP88bW/yIiIvVJC9SLiIjIJZs7dy6rV69m4MCBxMXF1Vhn586dPPjgg1XKrr/+egIDA8nNzQUgLy+PyMjIKnVq2n7o0CFefPFFPv/88yp116xZw5///Od6OirnU5d+fuaZZy6rrVGjRrFy5UquueYaWrRoQcuWLa80bJfUkOc0VD1XL9TXFzrPRURE5Moo2SUiIiKXbOLEiUyZMqVaeceOHVmyZAkAnTt3JjExsVqdjRs3snDhQkaOHElSUhI333xzle29e/eutv2OO+5g9uzZVRZb37t3L+3atauc+nUhWVlZDBgw4AqO0vHq0s+Xy2QyMXv2bKxWKxMmTKBfv36Aa/ff5WjIc/r8c7Wmvi4pKeHuu++udp43lv4XERFpCJrGKCIiInXWvXt30tLSaq3Tq1cvSkpKGDRoEN27d6dVq1YcO3as8ql0529fvnw5O3fu5L777iMhIaFyPaWapjAOHz6crVu3Mnz4cH788UcAMjMz6dq1awMcreNcSj9D9f44t5/P356UlERCQgLDhg3jpptuwtvbG3DP/rsc9XFOn3+uHjhwoFpfL1iwoMbzvLH3v4iISF0YrHrMywVlp+xmxejqv/TJlRmxdDqtel/l6DBEROQCev4yg2rTqCt7//Tp07nllltqfXqdvezatYulS5de9pQ+e3CFfnbm/rscrtDXNXGX/hcREamL9evXM3DgQNatW3fZo501jVFERETqRU1TwRwlJiaGmJgYR4fRIOzRz+7cf5fDUee0+l9ERKRuNI1RRERERERERETchpJdIiIiIiIiIiLiNpTsEhERERERERERt6E1u8Tp5JdBZq5j2o7yB18Px7QtIiIiIiIiInWnZJc4ncxcmLTeMW3PGQBxwY5pW0RERERERETqTtMYRURERERERETEbSjZJSIiIiIiIiIibkPJLhERERERERERcRtKdomIiIiIiIiIiNvQAvXiFtKeT6BgdzIGswcGkxnPtlcRMn4G/t2HOTo0EREREREREbEjjewStxEyfgbxi/KJnZeNT3Q/9sy8gYqC044OS0RERERERETsSMkucTtGj6Y0v2YiluJ8io9mOjocEREREREREbEjJbvE7VhKiji+ag5Gb388Qzo6OhwRERERERERsSOXSXaVlpYydepUQkND8fLyYujQoaSkpGAwGFi6dKnd4rgjc36VP3cd+IRRX79qt/blwo4smErq7YFsvzecwn0/EDXlC0ze/o4OS0TE6RWXw3+zzr6e8QPsOOW4eNxVuQVWHzn7euoWSPkZrFbHxeSOLFZI/gme33y2bM1RW/+LiIhI4+ASC9RbrVbGjRtHSkoK06ZNIyoqigULFjBmzBgA4uPj7RbLx1F3Vnk96utX2bd0vd3alwsLuf0FWo95wtFhiIi4lMxceCgZTpScLVuaBf/JglGh8HwcmAwOC89t/FRk6+d9+WfLvjoMKw5B3xbwSi/wcom7MueWXwaPbYCtJ8F4znn75Ebo6A9v9YVgT8fFJyIiIvbhErdV7733HsuXLyc1NZUuXboAkJCQQEREBEFBQbRv394hcTWPiyKwUzsyF61xSPsiIiJ1kVcGD34HOaVVy88MgPn8oC0x8FCM3UNzKxVWePh7yMqvWm75ZUTXhp/hr6nwYk+7h+Z2pmyB1JO2v1vOGzG3JxceS4F5g8CgBK6IiIhbc4lk16xZsxg/fnxlogvAZDIRERGBh4cH+/fv54YbbqjclpOTQ25uLidPnmzQuDrePpTD32ylKFtzPURExPV8cRBOltZeZ+FeuLsj+LjEHYNzWp8Ne/MuvN2KbXrjQwXQzsduYbmdzFxYl33h7RZgZw5sOg69WtgrKhEREXEEp791zcjIYN++fbz55pvVth08eJCxY8cSHh5OampqZfnkyZMpLy+/5Db8/PwoLa1+tx9pbsZT/gNrfI/ZqykRowew9tG3Lrmdxm7IkAT2lF88Megd3Y/I6YkNHU6NhgxJoDAt2SFti4jYW4cZ3+Id1RuD8cJLeBZXQPiwW8n9/j92jMy9tHvkfQIH3ILBdOHbLovVSp+7n+f451oH9Eq1vHkqLcc+V+v5bK0o5+a//Isj//ewHSMTERGRK2GxXPmCm06f7Dp8+DAALVu2rFK+e/dusrKyqq3XVVpayscff8xXX33VoHGFj+xHeVEph1ZvvnhlaXDRMxIdHYKIiMsx+TSrNTFQWc87wA7RuC+Td8DF581ZKjD56KEqdWHyDgBrBbU/f8mqh9eIiIg0Ak6f7AoODgYgMzOT3r17A7YF659++mksFku1ZNfnn39O27Zt+dWvfnXJbeTl1Ty3IDtlNytGT6lxW8c7hrHn00SsFXq0z6VasyaRVr2vumi91BMwyUFr/q9Zk0hcsGPaFhGxt0e/h+9/OrtG14Us/fCf9GnxT7vE5I5e3g6L99XezwaTmTemPcONHzxjt7jczcd74PUdtdcxmjz4w9238MjLt9gnKBEREbliubm5bN++nW7dul32ey/+c66DxcTEEBUVxXPPPcdnn33GihUrGD16NFu2bMHb25vo6Ogq9d9//31+97vfNWhM/pEhtOwZTfrCrxu0HRERkYZ0Q/uLJGCAVp7Qs7m9InJPoy/SzwBNjHBtW7uE47ZGtAPzRQbQWYGRjnmukYiIiFwmf39/BgwYgL//5Y/Kdvpkl9lsZvHixbRp04YJEyYwefJkRowYweDBg4mNjcV4zvSLw4cP8+2333LHHXc0aEwdbxtK9oZd5O071qDtiIiINKSrW0N8kC2pdT4DtsTAY13BpCfX1Ul0APymXe117r8KfD3sE4+7CmoKv+tUe52xYRDua594RERExHGcfhojQPfu3UlOrrpo+FtvvcXgwYOrlM2bN4/f/OY3lVMfG8rm6R816P5FRETswWyEN/rCC6nw9RFbcusMfw94shsMD3FUdO5lapwtmfXv/VB+Tkd7meC+q+CODo6KzL3c28k2uuv9DNvDFc4wG+C2DvBwZ8fFJiIiIvbjEsmu8xUVFZGWlsbkyZOrlH/wwQc1PrVR3MOB9x6haF8q/r8aQZtxz1WWZy/7O6eSFoLJTPgfPsCzTRTHv/6A4yv/jyYtw4j4wzwMZtvP5Tnf/5dDHzxJ13czHHUYIiJOxccML/WEI4WQdMyWIAj1sY368nD68d+uw2y0JQ8ndoI1RyG3DFp6wpA24O2Sd2POyWCwje66OcLWz8dLILCJrZ8Dmzg6OhEREbEXl7y92rZtGxUVFdUWp09PT3dQRNLQCjI2YTCaiX5xLXteuomynGw8AlsBcCppIdEvJ1OwO5njX75L2ztf5GTiR0S/tI6fvniTnA1LaTbgJlvd5H/TpHmoIw9FRMQphXjDrRpd1OCCmsLYcEdH4f58PbQ2l4iISGPmkr/Z9unTB6vVSs+ePR0dithJQfoG/GKHAuDXdTCFmZsrt3k0D8VaVkJF4WlMvkEUH0nHK6I7BoMB/27/396dh0dV3n8ff08WNlkDAgoBAkEMIJCqoKwjolVbUKpoVRRbferuj9a1Cn3oopbaPrX+tLRWrZYWbaVatEVUKhGUaECI7BAQIosgiuwhkGSeP0YCMRCCJJnM4f26rlzMOeeeme8ZjzNzPnPf9xnMrrwcALYveIuGGf0hFJeHvSRJkiRJqgTP+hUXindtJbFB9AoMCfUbUbxra+m2hl37s/jWDD7+w800H3zdYdt+Pv0Zmg8eVdOlS5IkSZKkGmTYpbiQeEJTindvB6CkYAeJJzQFoHj3drbO/ifd/5BHpx+/zCcvjDtk2115c6mX2pWEOvVitQuSJEmSJKkGGHYpLpxwSm92LJwBwI7FM2mQfvqXW0Ik1DuBUGISiQ1TKN61lbondaZgzQIikQg7Fs7ghM69Kfh4Edtz3yRv3AXsXp3LJ/94MHY7I0mSJEmSqk1cTlCv488Jnc/k8/8+y/IfD6Bx5jfZt+UTts9/g+bnXMMJXc5m2b39oKSY1P/zGAnJdUgZeCXL7+tPnRapdBj9FxKS69Di3OsAWDF2CCdd/kBsd0iSJEmSJFWLUCQSicS6iNpqU84yXrt4TKzLCIwLp/yCVr1PPWK73M/hhndroKBDeKof9Goem+eWJEmSJEnHzmGMkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICwzm7KrB3x26+WPpxrMsIjGYZ7ajTqMER2+3cByu310BBh5DeGBomx+a5JUmSJEnSsTPskiRJkiRJUmA4jFGSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICw7BLkiRJkiRJgWHYJUmSJEmSpMAw7JIkSZIkSVJgGHZJkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAsOwS5IkSZIkSYFh2CVJkiRJkqTAMOySJEmSJElSYBh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICw7BLkiRJkiRJgWHYJUmSJEmSpMAw7JIkSZIkSVJgGHZJkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAsOwS5IkSZIkSYFh2CVJkiRJkqTAMOySJEmSJElSYBh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICw7BLkiRJkiRJgZEU6wIkSZIkSdLxa++O3Xyx9ONYlxEYzTLaUadRg1iXEVOGXZIkSZIkKWa+WPoxr108JtZlBMaFU35Bq96nxrqMmHIYoyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAVG3IRde/fuZezYsaSmplK/fn0GDx5MTk4OoVCIKVOmxLo8BdS2vTBpFfw8F8YvgHc2QXEk1lVJkiIR+HAL/GYR/CwXnloOGwtiXZUkSapKocQEev/8e1y55M9ctew5+v7mZhLrJse6LMWBpFgXUBmRSIQRI0aQk5PDuHHjSE9PZ9KkSQwfPhyAzMzMGFeoIHppDTyyCPaVQGIIIsCLayD1BPhtH+jQMMYFStJxamsh3DUHcrdEf7ULhaAkAn9cDtekw20ZkBCKdZWSJOlY9bjjO7Tu250pg++keF8R5z57L6ePuYacsc/EujTVcnHRs+vJJ59k6tSpTJ8+nRtvvJFzzz2XJ598ksTERFJSUmjXrl2sS1TAvLkeHloQDbog2pur5MseXet3w03vRk+2JEk1q6gEbnsPFmyJLpcQfY+OEP37y0p4akUMC5QkSVWm89XnsvCxl9i9cQuFn28n9zf/IP2KMKGEuIgyFENxcYSMHz+ekSNH0q1bt9J1iYmJpKWllfbqWrFiBWeffTannHIKZ599Nnl5ebEqV3EuEoHfL4PDdQooicBnhfDyxzValiSJ6HDyZduiIdfhPJcHO/fVWEmSJKka1GncgIZtTmTL4tWl6z5fuJo6jRrQMPXEGFameFDrhzHm5eWxevVqHnvssXLb1q5dy6WXXgrATTfdxK233srIkSP561//yo033shbb711xMffvn07rVu3pqioiFDIMQ+C+p1OJ/2XsytsE4mU8P/+u4qbunevoaokSQDt7nyBxmcOJZR4+K8whSXQ6VvXs/Xtv9ZgZZIk6evqlNSMexr3L7MuqWF9APZu2126bu+2XQAkf7lNh3bOOWFWFX0R6zKqRJ06ddixY8dR36/W9+xav349AC1btiyzftmyZeTn55OZmcmnn37KvHnzuPLKKwG48sormTdvHps3bz7i4y9cuJCCggIiEWcdV1RSk5ZHbBMKJVSqnSSpaiU1bVVh0FXazvdoSZLiWtHO6JVnkhs3KF1Xp8kJAOzb6VVpVLFa37OrefPmAKxcuZLevXsD0Qnr7733XkpKSsjMzGTt2rW0adOGxMREIDrE8eSTT2bt2rWceGLlujdmZWXRr1+/6tkJxZXFX8CoWUdul9ayCfMLnbhLkmrS3XPg7U8qHsYI8Mf/9zDffvHhGqlJkiQdm005y3jt4jFl1u3dvpud6zeT0q0D21dtAKB59zT27tjNzrVH7thyPJsxI4tWvU+NdRkxVevDroyMDNLT07n//vtJTk6mYcOGTJgwgfnz59OgQQO6dOnC/PnzY12mAqRrU2h3AqzdFZ3s+HCGeV0ESapx32oLMz6puE29RAi3rpl6JElS9cn723/pcftwNr2/lJKiYnrdeTkr/55FpORIP3vpeFfrw66kpCQmT57MTTfdxKhRo0hNTWX06NE0btyYVatWkZCQQGpqKuvXr6e4uJjExESKi4vZsGEDqampsS5fcSgUglsy4L65h96eADSvB5e0r9GyJElA/1bRHyWWbT18767r0qFhcg0WJUmSqsWCx16ibkpjLsn6LaGEEGv+/R4fPOicnDqyWh92AfTs2ZPs7Owy6x5//HEGDRoEROfz6tWrF88//zwjR47k+eefJzMzs9JDGKWvGnIyjOkJv1oIe79yNtX2BHi0DzStE5vaJOl4lpQAj50Fd+fA/C0H1oe+/Ls2Ha4/JVbVSZKkqhQpLiFn7DPkjH0m1qUozsRF2PVVBQUFLF++nNGjR5eu+8Mf/sCoUaP42c9+RrNmzfjLX/4SuwIVCJe0h8EnwdR18OtF0XWPnQVnnQgJXrhTkmKmaR14sh8s3grXfTnH4s2nwrdToaUXZ5IkSTruxWXYtWDBAoqLi8nMzCxdd+qpp/L+++/HsCoFUeM68N2OB8Kuvl7cS5JqhVAIujc7sPx9e3NJkiTpS3EZdvXp04dIpKKpwyVJkiRJknQ8Soh1AZIkSZIkSVJVMeySJEmSJElSYBh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICw7BLkiRJkiRJgWHYJUmSJEmSpMAw7JIkSZIkSVJgGHZJkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAsOwS5IkSZIkSYFh2CVJkiRJkqTAMOySJEmSJElSYBh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBETdh1969exk7diypqanUr1+fwYMHk5OTQygUYsqUKbEuT5JqvZIIvPcpPL4EfrcY3lwP+0piXZUkCeCLQnj+I3h0MTy1AvJ3xroiSYq9DkPP5sIpP+fqlRO5LOf3sS5HcSQp1gVURiQSYcSIEeTk5DBu3DjS09OZNGkSw4cPByAzMzPGFUpS7bZqO9w9Bz7edeBXjhKgWR34xenQ58RYVidJx69IBJ5cDn/Og6IIJIaiP078YRmcexKMy4T6cfGNXZKqXuG2XSx7Zhr1TmxCtx98O9blKI7ExUfnk08+ydSpU8nNzaVbt24AhMNh0tLSSElJoV27djGuUJJqr40F8IN3Yce+6PLBnbm27YX/eQ+e6g/dm8WkPEk6rj29Av604sByceTA7bc+gd1F8NhZEArVfG2SFGufzFwAQLsLzoxxJYo3cTGMcfz48YwcObI06AJITEwkLS2ttFfXXXfdRVpaGqFQiEWLFsWqVEmqdZ5fBdv3lQ259ish2oPgj8tquipJ0o598Eze4bdHgOzNMH9LjZUkSVIg1PqwKy8vj9WrV3PppZeW27Z27drSsOuSSy5h5syZtG/fvqZLlKRaKxKBKR9HT5gOpwR4bzN8tqemqpIkAUzfAHuPMHdiQghe/bhm6pEkKShq/TDG9evXA9CyZcsy65ctW0Z+fn5p2NW/f/9jep5wOExCQq3P/hQj3f8RTQHq1q0X40qkoxNKqkP353ccsV0E6NSzN3vWfFj9RUlVyPdnxbOWlz1AyxFjCFXwHbS4JMKkV6fz0FnOVSMpuDolNeOexsd2Tq8DzjknzKqiL2JdRpWoU6cOO3Yc+Xzmq2p9utO8eXMAVq5cWbouEolw7733UlJS4uT0klSBSNFeSgp3V6pt8U7HyUhSTSreuaXCoAuAkmKKd35eMwVJkhQQtb5nV0ZGBunp6dx///0kJyfTsGFDJkyYwPz582nQoAFdunSpkufJysqiX79+VfJYCp4zXon+W1hYGNtCpK/hwQ9hSv6h5+yC6K8e3ZvB3PUrD9NCqr18f1Y8+2wPXPRmdO7EwwklJvHsnd+l/6++W3OFSVIN25SzjNcuHlNufSghgYTkREJJSRAKkVg3mUgkQsneohhUGT9mzMiiVe9TY11GTNX6sCspKYnJkydz0003MWrUKFJTUxk9ejSNGzdm1apVDj2UpCO4uiNMXQv7Sg4deEWA/1M1vxtIko5Ci3pwWQf4x+pDb08AOjeBs1seerskBV2nywbS/3e3lS5fs+Z5dq79lMm9b4lhVYoHtT7sAujZsyfZ2dll1j3++OMMGjQoRhVJUvzo0Ch62fo7c2DnV34ESwrBmF6eSElSrPyoG+zaB/9ZFw23Dv5R4tSm8GgfSAzFqDhJirGV/8hi5T+yYl2G4lBcdosqKChg+fLlZebruuOOO2jbti3r1q1jyJAhdOvWLYYVSlLtcnoLeO18GNPzwLo7usK08+HbqbGrS5KOd0kJ8NNvwAth+G7HA+ufOBueHQApdWNWmiRJcSsuw64FCxZQXFxcJux67LHHWLduHUVFRWzcuJHFixfHsEJJqn3qJ8El7Q8sX5sOTT2JkqRaIb0x/Kj7geU+J0KCPbokSfpa4mIY41f16dOHSKSCmTwlSZIkSZJ0XIrLnl2SJEmSJEnSoRh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICw7BLkiRJkiRJgWHYJUmSJEmSpMAw7JIkSZIkSVJgGHZJkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAsOwS5IkSZIkSYFh2CVJkiRJkqTAMOySJEmSJElSYBh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwIibsGvv3r2MHTuW1NRU6tevz+DBg8nJySEUCjFlypRYlyfpGEQiMGczPJsHz+XBoi+i66R4tWYn/HUVPLMCsj6BopJYVyRJUs0pjsC7m+DPeTBxJSzfFuuKFI8S6iTR99c3cel7T3B13kSGv/MYp37/wliXpTiRFOsCKiMSiTBixAhycnIYN24c6enpTJo0ieHDhwOQmZkZ4wolfV1Lt8IDH8DHu8qu79IEHj4d2jWMSVnS17J1L/xkHsz+tOz6lDrwQC8Y1DomZUmSVGPmfR79LNxYUHZ9rxR48HRoVT82dSn+JCQmUvDpVt747s/Zkb+JlK7tOe/5MezZvJU1r2bHujzVcnHRs+vJJ59k6tSpTJ8+nRtvvJFzzz2XJ598ksTERFJSUmjXrl2sS5T0NXy0A37wLqzbVX5b3na44R34tKD8Nqk22lMMt8yG9z4tv+2LvXBXTvkQTJKkIFn0Bdyafejvbwu2RL/bbdtb83UpPhUVFDL/Vy+wY81GiETYsngNa9+YS8veGbEuTXEgLsKu8ePHM3LkSLp161a6LjExkbS0NDIzM/n888+56KKL6NKlC6eddhrf+c532Lx5cwwrllQZf1oOhcVwqBFeJZFoQPC3VTVelvS1TFsHK7Yf+njePyr30cUO0ZUkBdfvl0JxyWG+2wGfFMDkNTVclAIjlJRIqz4ZfLE0P9alKA7U+rArLy+P1atXc+mll5bbtnbtWjIzMwmFQtxzzz0sX76chQsX0qlTJ+67774YVCupsrbvhf9+cugvQ/tFgH99HA2+pNru5XwIVbA9QrQ341LnLZEkBdDG3ZDzWcXf7SD6eSl9HWc9dD37dhaw6sW3Y12K4kCtn7Nr/fr1ALRs2bLM+mXLlpGfn09mZiYpKSmEw+HSbWeddRYTJkw4qucJh8MkJNT67E8x0v0fewCoW7dejCsJjrptTuWURz88YrtdRXBCyomU7N5eA1UdHzyeq0fGn9aS1LTlEdsNGnYF29//V/UXdJzweFbQeEwrXjXocjadfpF1xHaf7Cqmbt0G1V+Q4kqnpGbc07j/YbefOW4UJ57ehddHjKNkX1ENVhafzjknzKqiL2JdRpWoU6cOO3bsOOr71fp0p3nz5gCsXLmydF0kEuHee++lpKSk3OT0JSUlTJgwgWHDhtVonZKOTvHuynVviRQXUVK4u5qrkY5d8e6tRCoxRrF4l127JEnBU9nvdiUFR3/SquNb759dx8kDe/D65T+lcIvHjyqn1vfsysjIID09nfvvv5/k5GQaNmzIhAkTmD9/Pg0aNKBLly5l2t9+++00bNiQ22677aieJysri379+lVl6QqQM16J/ltYWBjbQgLm+7OiE5kerrt7AnBuahIf7D7EDPb62jyeq8eTy6N/FWlWBzbNmUZyrf+pKX54PCtoPKYVryIRuGwGfLzzwFyVX5UAXNatKfd5fOsrNuUs47WLx5Rb3/vn3+ek/t2Zdtk4Cj93pEdlzZiRRavep8a6jJiq9WFXUlISkydP5qabbmLUqFGkpqYyevRoGjduzKpVq8oMPbzrrrvIy8vj1VdfdUiiFAe+fwqMfv/Q20JAKAQjO9VoSdLX9p328PxHsGvf4QPcUZ0x6JIkBVIoBDecAmPnHWY7kJQA302r0bIUx05o24KuN1xE8Z69XPb+E6XrN72/jOlXPxjDyhQPan3YBdCzZ0+ys7PLrHv88ccZNGhQ6fL999/PBx98wH/+8x/q1q1b0yVK+hr6t4If94DxC6K/AB78K2BSAjz4DejWLFbVSUenRT14/Cy44z3Ytu/A+gSi4dfITnB1x1hVJ0lS9buwLWwqgMeXRsOtg7/b1UuER86EDo1iVZ3iza51n/HsSZfFugzFqbj8fbmgoIDly5eXzte1ePFiHn74YTZs2EDfvn3p1asXw4cPj3GVkirj0g7wypBoL6/9bsuA/5wHg0+OWVnS19KtGbxyXjTE3W9EGrwQhtHdor96S5IUZNd1hpcHl+2d/6Nu0e92Zx35Oi6SVCXiomfXVy1YsIDi4uLSsKtbt26VmhRYUu3UugHcfCo8vSK6fF3n2NYjHYsTkqIh7sMLost3nxbTciRJqnGpDeF/usHEVdHlq5yWQlINi8uwq0+fPoZbkiRJkiRJKicuhzFKkiRJkiRJh2LYJUmSJEmSpMAw7JIkSZIkSVJgGHZJkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAsOwS5IkSZIkSYFh2CVJkiRJkqTAMOySJEmSJElSYBh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICw7BLkiRJkiRJgWHYJUmSJEmSpMAw7JIkSZIkSVJgGHZJkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAiNuwq69e/cyduxYUlNTqV+/PoMHDyYnJ4dQKMSUKVNiXV6NK47A7E/hxdXwn7WwdW+sK5IkSUG0pwimb4h+53hrAxQWx7oi6esriUDO5ujx/O+P4fM9sa5IOjartsNLa6J/K7fHupqqd9bDNzBi7h+4asVfGDHvj/T+2XUkJCfFuizFgbg4SiKRCCNGjCAnJ4dx48aRnp7OpEmTGD58OACZmZkxrrBmvbUBHlkEmw/6cE4KwXc6wA+7QXLcRJiSJKm2ikTguZXw5zzYVXRgfcMk+EEXuLIjhEKxq086WrM/hYc/hE8KDqxLDMG32sI9p0G9uDgzkqLW74Jx82H+lrLre6XAuExoe0Js6qpqS/88jbk/m0hRQSF1UxoRfvJOetzxHXJ/849Yl6ZaLi7e0p988kmmTp1Kbm4u3bp1AyAcDpOWlkZKSgrt2rWLcYU1578b4L655dcXReAfq+HTAnjkTL98SpKkYzNhGTyTV379ziL4f4thTzF8/5Sar0v6Ot77FEa/Hw1xD1YcgVfXRgOw/z0LkvzRWHFg8x64/h3YUlh+24It8L1ZMHEQtK5f87VVtW0r1h1YCIWIlERo1PGk2BWkuBEXb+fjx49n5MiRpUEXQGJiImlpaaW9ui655BJ69uxJZmYmAwYMIDc3N0bVVp+iEvj1wujtyGHaZG2EuZ/VWEmSJCmANhZEe3RV5Mnlhz7RkmqbSCQ6KiISOfR36Agw5zOYubGmK5O+nufyou+/JYfYVgJs2wvPHuE9PJ6cdtslXL1yIlcueoaUbu1Z8uS/Y12S4kCtD7vy8vJYvXo1l156ablta9euLQ27nnvuOT788EPmz5/PXXfdxfe///2aLrXavbcZNhcePugCSAjBy/k1VpIkSQqgVz8+cpuiCExdW/21SMdqwReQv/MI36GBl/wOrTiwrwRe+fjQQdd+JcC/10Z74AbBwsf/xd/Sr+Hlgf/D8r+8QcGnX8S6JMWBWj+Mcf369QC0bNmyzPply5aRn59fGnY1adKkdNu2bdtISDi6HC8cDh/1fWpa8wtu4eTrf1thm5II/GvWPH7T7+waqur40P0f0QnS6tatF+NKgs3XuWb4OtcMX+ea4etcPdre+hRNB3yXUGLyYdtEivYx9rfPcP1Td9RgZcHnMV31mg68itTb/1xhmxJg5qLV1A2fWjNFHSc8nqteUtPWZPzpyMnsnmJo0S6dfZ/Fx68SnZKacU/j/hW22Za3ni2L8xnwv3fw+mXjaqawOHXOOWFWFQUjFKxTpw47duw46vvV+rCrefPmAKxcuZLevXsD0Qnr7733XkpKSspMTn/DDTfwxhtvEIlEmDZtWkzqrU7Fe478HzhSUkxJwdEfCJIkSfuV7NkJHGEC0ISEL9tJtVtJwZGP00ikhGK/QysOlBTuqnzbPZVvGy8SkhNp7JxdqoRaH3ZlZGSQnp7O/fffT3JyMg0bNmTChAnMnz+fBg0a0KVLl9K2Tz31FAATJ07k7rvvZurUqZV+nqysLPr161fl9VelLYVw0RvRYQOHE0pI5GdXDuLy+51Eoyqd8Ur038JCX9fq5OtcM3yda4avc83wda4eczbDzdkVtwklJPKfX99J96fvrJmijhMe01VvVxF88/WKh3SFQgn86IIeXH+Hr3tV8niuHrfMjs7TfLihjAkh6NkM5n7+SY3WdSw25SzjtYvHlFmX3KgB7S/szcfTcti7fTfNMtrTc/SlbMj6MEZVxo8ZM7Jo1fv47qlau8ftAUlJSUyePJmTTjqJUaNGMXr0aC688EIGDRpEjx49Djn08JprrmHGjBl8/vnnMai4+qTUhWEVXHgyIQTN6sBFbWuuJkmSFDxntIAuTQ7/RTGB6OXtuzWtwaKkr+mEJLgi7fDbE75sc8nxc4F3xblr048wZ1cERnWusXKqTyRCx0sHcul7T3D1yokM/vM9rPvvfN5/4OlYV6Y4UOt7dgH07NmT7OyyPy8+/vjjDBo0CICdO3fyxRdfkJqaCsCrr75KSkoKKSkpNV5rdbuzO3y6B97ZFA23Sg7q5dU4GR4/GxoefnoNSZKkIwqF4NE+cPNsWHPQCLAEoidYnRrDr86MtpPiwc2nwicF8Mb68t+h6yfBY2dBc6eVUpw4qyXc1wPGL4gu7z+c978l39kd+reKRWVVa9/OAt644mexLkNxKi7Crq8qKChg+fLljB49GoBdu3YxYsQIdu3aRWJiIikpKbz66quEAvgNrG4i/L/ekLM5esWYt77smXpXd/hWKjQy6JIkSVXgxHrwt0Hw3w3wk/nRdX1OhG+3g8EnQXKtHx8gHZCUAA9+A77TPnrl8tej18Dif7rC0HbQtE5s65OO1mUd4MwW8M81MOmj6LrvdoRL20OHRrGsTKod4jLsWrBgAcXFxaWT07dq1Yr33nsvxlXVnIRQNM0/q+WBcfDf7RjbmiRJUvDUTYSLUg+EXf/rxZ4Vx0Kh6BDdM1ocCLuuSY9tTdKxaN8QftT9QNh1Z/fY1iPVJnEZdvXp04dIpIJZ2iVJkiRJknRcsgO6JEmSJEmSAsOwS5IkSZIkSYFh2CVJkiRJkqTAMOySJEmSJElSYBh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEtS3MjKyiItLY1wOMyoUaPKbZ84cSLTp08H4KGHHmLAgAHcfvvt5dp9+OGH9OvXj3POOYe1a9cCEA6HCYfDdOvWjdGjR5e2zc3NJTk5uXQ5IyOjtO2WLVvYsmULP/rRj6p4TyVJkiRVp/6P3kqfB6+PdRmHdPXKiaR0T4t1GXHNsEtSXLn++uvJysqiSZMmZGdnl9n26quvcu6557Jp0ybmzZvHrFmzSEpKYu7cuWXa/exnP+Pll1/m0UcfZfz48UA0SMvKymLYsGFcdNFFpW0nTJjAN77xjdLlNm3alLZNSUkhJSWFrVu3snPnzmrca0mSJEmH07pvNy7450+5Om8iV+dN5IJ//pTWZ3eLdVmlet15Oef+5ceVbv+39GvYsmh1NVYUfIZdkuJS9+7dWb9+fenyli1bqFevHqFQiLlz5zJo0CAABg8eTE5OTpn77tq1i5YtW9KzZ09WrlxZZltWVhbhcBiAvLw8TjzxRBo1alS6fdOmTQwcOJB77rmHSCQCQJ8+fcjKyqqGvZSk+HCknrcPPvggeXl5FT7G7bffzoABA3jooYfKbcvJyaFfv3707duXMWPG8M4773DWWWfRt29ffvOb3wAwbdq00p63zZs3Jzc3l6VLl5b+qCFJCqa2Q07nvEljWDv9A/7xjRv5xzduZO30Dzjv+TG0Pfcbh7xPKLHqopBQUmKVPZaqjmGXpLiUnZ1Nenp66fLKlStp3749AFu3bqVx48YANGrUiK1bt5a5b0lJySFv73+MOnXqAPC73/2O2267rcx9Z86cycyZM9mzZw9Tp04FoH379qxYsaLqdk6S4tDhet6WlJSwYMECOnfufNj7zp07l6SkJGbNmsW8efPYtGlTme2ZmZm8++67zJ49m+zsbNq1a8fMmTOZPXs2//73v9m9ezcXXHABWVlZzJgxg44dO9KzZ08yMjKYN29e6Y8TkqTg6fOL77PyxSwWT3iFfTt2s2/HbhZPeIVVk9+m9y++D8BlOb+nx+hLueiVBxn50d9o0bMTAMkn1CP85J1cnTeRS97+LSeHex7x+Vqf3Y2rV07klJFDuGzOBIZN/zUAJw3swbdfH89Vy59j2H9/Q7sLzgSg3QVnctodw2lzTi+uXjmRq1dOJKFOUoXPcd0nk2nesxOhxASuWvEXmnZJjT53325c98lk2n/7bADqt2zKtR+/QHLD+l/vxQswwy5JceXpp58mHA7Tpk0bevXqdcg2TZs2Zfv27QDs2LGDpk2bltmekJBwyNtTpkzh4osvBmDDhg0AtG7dusx9mzVrBsDQoUNZvHjxMe2LJAXRV3vefvjhh5xyyikV3uf9999n8ODBAAwaNIgPPvigzPb9cycWFxdz8sknc/LJJ5f+MJGYmFjmvXzOnDmcccYZhEIhADp27Oj7tSQFVONOJ9OofStW/+vdcts+evkdGndoTeOOJwGQPiLMu3f+nr+lX8PnXw4RTLukPx+9PItJp45iwf++zOBn7qFB65QjPm9S/bq06JXOvwaO5t8X3kujDq0Z8tx9LHr8Xzzf9Xt88OBfGTThh6R068DH0+aw8LGXWT8jl7+lX8Pf0q+hZG9RpfYvUlzCpveXclL/0wA4acBpbF/9CSf17x5d7n8any/4iH07Cyr1eMcTwy5JcWV/z4Ff/OIXZdanp6eTn58PwOmnn87MmTMBmDFjBr179y7TtkGDBmzevJkFCxaU6R02derU0vm6lixZQm5uLhdccAG5ubnccccd7Nu3j8LCQiDasywtLTppZH5+foU9FiTpePLVnrd5eXl06NChwvscqUcuwKRJk8jIyKBp06YkJUV/EX/zzTfp1KkT9erVK2138A8XYO9bSQqyeinR6UYKNm0pt63g0y+ibZpHP1+WT3yTbXnriZSUlIZNG99bwsev5RApLuGjyTP5Ykk+HYaefcTnDSUk8MFDf6OooJDigr2kXdyXTe8vZc2r2USKS1j/1nw+fmMunUYMOuZ93PjOojLhVu6v/1EafrXu151P3l10zM8RRIZdkgIhJSWF3bt3A9HeWD169GDAgAEUFhZyxhlnsHHjRh555BEAxo4dyyWXXMIdd9zBPffcA8Bnn31GcnIyTZo0AWDIkCG88847TJs2jV69evHYY4+xbds2+vbty8CBA1m+fDnDhw8H4L333iud50uSjleV6Xm7ZMmS0nm19v/98pe/PGKPXICrrrqKZcuWsWHDBhYuXMi6det4+OGHS+fs2m/GjBmlvcQkScG2Z8sOAOq3Kt8bq37L6IiMPZ9HP192rd9crs2udWXX7Vy7uVI9u4oKCin88rkBGpzUnJ1ffaz8TTQ4qfkRH+tIPnlnIa3O6kqdxg1o3PFkVv/rXRLrJNHgpBRO6t+dT2YtPObnCKKKB4pKUi2y/8TocIYNG8b06dMZMmQIY8eOZezYsaXbWrduzd133w0cmPvlYC1atGDatGmHfNzp06eXtvnq0JotW7bQtGnTMpPYS9Lx6Prrr2fMmDHl1nfu3JmXXnoJgK5dux7ygh5z5szh+eefZ+jQocycOZPLL7+8zPbCwkLq1q1LQkICjRo1ok6dOlx33XVMmDCBhg0blrb76KOPaNu2bekQR4j2vu3Xr18V7aUkqTbZvmoDOz7eRNqwvmz8Sg+ntIv7suPjTWz/6BMAIiXl5288oe2JZZYbpp7I5nlH7g0cOWjeX4Ddn3xe7uqPDVNbsvuTzw/Z/mhsWbyGSEkJXf/Pt/l0zjIiJSV88s4iTrlqCA1aNuPTOcu+9mMHmT27JAXGtddey5AhQ2r0OVNSUvjtb39bo88pSfGkZ8+eLF++vMI2Z555JoWFhQwYMICePXvSqlWrMj1yX3nlFcLhMAMHDqRt27bMnj2bJUuWcOONNxIOh0vnCPvqEEaIXnyke/fu1bNzkqSYy/nJs6RfcQ7dbhxKcsP6JDdqQNcbv0365eeQM/bPFd639VldST3/DEKJCXT8zgCadW3Pmv+8d9Q1rJ4ym1Z9Mmj/rT6EEhJoc04vUr95BqsmR6dWKfhsGye0afG1rwK5cfZiuv7gW3zyTrQX1yfvLqTrD77Fpx+soLhw39d6zKCzZ5ckSZKOSUU9bxMSEujRowd5eXkVzm/4xBNPlFk+uEfuiBEjGDFiRJnt3/ve98o9xg9/+MMyy0uXLuX0008vnaxekhQ8a1+fw/SRD9HzR5fR6+5oz+DPF3zE9JEPlYZDh7P6X+/QacQgBj7xP+z65HNm3PBrdm/4/Khr2LFmI299/1d848dX0++3t7Jr3WZm3vYYW76cCH/Nq9l0vKQ/3130DKFQiBd6XF/pSeoBPpm1kA7fPptP3on2XvvknUXUaXyC83VVwLBLkiRJ1epQwxtrQkZGBhkZGTF5bklSzfnknYUVBluTe99Sbt07o584RMsj25i9mL+lX1Nu/foZuayfkXvI++zdupNpl/7fSj1+6MsrDB8chi3/yxss/8sbpcsFm77g2ZMuO4qqjz8OY5QkSZIkSaoFmnVrT8m+okNOqK/Ks2eXJEmSJEnSly7O+i0N27Yot37tGx8w85ZHj/nxh/ztAVr1ObXc+n0795CQnMgHD01i7/bdx/w8xzPDLkmSJEmSpC9NCf/wyI2OwfSrH6zWx5fDGCVJkiRJkhQghl2SJEmSJEkKDMMuSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGHERdu3du5exY8eSmppK/fr1GTx4MDk5OYRCIaZMmRLr8iRVgXW7DtzevCd2dUiSyioqOXB77mdQHIldLZKk41NivTp8Z/b/cvXKibEuRXGi1oddkUiEESNG8NRTTzFmzBj+/e9/k5aWxvDhwwHIzMyMcYWSjsUnu+H2bBj+3wPrvvUG3DcXthbGri5JEry0Br715oHlm2bDt9+Ef38cs5IkScehzLuvYOe6z2JdhuJIUqwLOJInn3ySqVOnkpubS7du3QAIh8OkpaWRkpJCu3btYlyhpK/r0wL43izYUggHdxQoAd7aACu3w58HQKPkWFUoScev5/Lgf5eWX795D4zLhV3FcEVajZclSTrONO/RkTbn9GLOT//COU/fFetyFCdqfc+u8ePHM3LkyNKgCyAxMZG0tLRyvbp++tOfEgqFWLRoUU2XKelr+NOKaNBVcohtJcCanfD8RzVdlSTpsz3wxLKK2zy6GLbvrZl6JEnHp1BiAn1/fRPv3f8UJXuLYl2O4kitDrvy8vJYvXo1l156ablta9euLRN2zZs3j/fee4/27dvXZImSvqbdRfCftYcOug42eQ1EnB9GkmrUq2uh5AjvvftKYOq6mqlHknR86n7LxXy+cDWb3jtEV2OpArV6GOP69esBaNmyZZn1y5YtIz8/vzTsKiws5NZbb+X5558nHA5/recKh8MkJNTq7O+Quv8jOpN33br1YlxJsPk6V726J3fhlN8tOGK7LYXQoFkLSgp21EBVxweP55rh61wzfJ2rR9tb/0TT/lcSSjr8OPJI0T5+/JtnGPXUHTVYWfB5TNcMX+ea4etcM4LwOndKasY9jfuXWdeoQ2u6XHs+r5x3d4yqil/nnBNmVdEXsS6jStSpU4cdO47+XLBWh13NmzcHYOXKlfTu3RuITlh/7733UlJSUhp2/eQnP2HkyJF06NAhVqVKOkolewsq1S4SKSGyz8szSlJNKtm7B0KhihuFQpQU7q6ZgiRJx51WvU+lfosmfOfdxwBISEok+YT6fHfxM8y4/hF7e6lCtTrsysjIID09nfvvv5/k5GQaNmzIhAkTmD9/Pg0aNKBLly5kZ2czd+5cfvnLXx7Tc2VlZdGvX78qqrzmnPFK9N/CQi9bV518nateJAJXZMHqHWUnpz9YAtCnZQIf7NpZg5UFn8dzzfB1rhm+ztXj3U3wP+9X3CaUmMTL43/IN576Yc0UdZzwmK4Zvs41w9e5ZgThdd6Us4zXLh5TZt3qV2ezYdaBkSAnnt6F/r+7lVeG3MWez7fXdIlxZcaMLFr1PjXWZcRUrR63l5SUxOTJkznppJMYNWoUo0eP5sILL2TQoEH06NGDhIQE3n77bZYuXUpaWhodOnRg3bp1fPOb3+SNN96IdfmSKhAKwbXphw+6IDqf19WdaqoiSdJ+Z7eEDg0P/0UxAejSBDJTarIqSdLxpLhgL7s/2VL6V/j5dohE2P3JFier1xHV6rALoGfPnmRnZ7N7926WL1/OzTffzPz580uHMN53331s2LCBNWvWsGbNGtq2bcvrr7/O+eefH+PKJR3Jt9rC9zpHbx/8ZrT/9l3d4ayWX72XJKm6JYTgd32gZf3o8v4Bjfv/bXMC/L/eRx7pKElSVdmYvZi/pV8T6zIUJ2r1MMZDKSgoYPny5YwePTrWpUg6RqEQ3JoB/VrCi2tgwZbouj4nwmUdor0GJEmx0eYEeCEM/14bvXru54VwYj0YmgoXpsIJcfctUpIkHS/i7mvKggULKC4uLu3Z9VVr1qyp2YIkHbNezaN/kqTapWEyfLdj9E+SJClexF3Y1adPHyKRimb5kSRJkiRJ0vGq1s/ZJUmSJEmSJFWWYZckSZIkSZICw7BLkiRJkiRJgWHYJUmSJEmSpMAw7JIkSZIkSVJgGHZJkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAsOwS5IkSZIkSYFh2CVJUgxkZWWRlpZGOBxm1KhR5bY/+OCD5OXlHfb+OTk59OvXj759+zJmzJhDtrn99tsZMGAADz30EAB//OMfOffccwmHw+zbt4+lS5cyfvz4qtkhSQqQY32PhvLvwYfy6KOPMmTIEAoKCrjooosYNGgQ3/ve9wDYt28fl19+OeFwmEceeQTA921JqiTDLkmSYuT6668nKyuLJk2akJ2dXbq+pKSEBQsW0Llz58PeNzMzk3fffZfZs2eTnZ3N9u3by2yfO3cuSUlJzJo1i3nz5pGfn8/ChQv573//S1ZWFsnJyWRkZDBv3jwikUi17aMkxatjeY/+6nvwpk2byrXZt28fubm5ALzxxhv079+ft99+m+TkZBYtWsRLL71E3759ycrK4oMPPmDz5s2+b0tSJRl2SZIUY927d2f9+vWlyx9++CGnnHJKhfdJTk4GoLi4mJNPPpkGDRqU2f7+++8zePBgAAYNGsSUKVPYtWsXgwcPZty4caXtOnbsyOLFi6toTyQpeL7Oe/RX34M/+OCDcm0mTpzIlVdeCUBaWhq7du0CYOfOnTRp0oTVq1dz2mmnAZCRkcGcOXMA37clqTIMuyRJirHs7GzS09NLl/Py8ujQocMR7zdp0iQyMjJo2rQpSUlJZbZt3bqVxo0bA9CoUSN27txJKBTirbfeYvXq1aW9Cdq3b8+KFSuqbF8kKWi+znv0V9+Dt27dWmZ7SUkJr7/+Ot/85jcBSE9PZ9asWWRkZBAKhUhNTaVLly68/fbbRCIRZs2axbZt2wDftyWpMgy7JEmKkaeffppwOEybNm3o1avXIdssWbKEcDhc5u+Xv/wlAFdddRXLli1jw4YNLFy4sMz9mjZtWjq0cceOHTRp0oRBgwYBMHDgQJYvX159OyZJAXAs79FffQ9u2rRpmfu99NJLDBs2rHT5ueee44orrmDp0qW0aNGC2bNnM2zYMDZv3sx5553HiSeeSMuWLatrVyUpcJKO3ESSJFWH66+//pCTy3fu3JmXXnoJgK5du5KVlVWuTWFhIXXr1iUhIYFGjRpRr169Mtt79+7N888/z9ChQ5k5cyZ33XUXL774IgALFy4sHTqTn59Pv379qnjPJCn+Hct79Jw5c8q8B19++eVlti9fvpysrCwmTpxIbm4uQ4cOLQ2zUlJS2Lp1K4mJiUyYMIFIJMKoUaM4++yzAd+3Jaky7NklSVIt07NnzyP2vHrllVcIh8MMHDiQtm3b0rlzZzZu3Fh6xa4zzzyTwsJCBgwYQM+ePenTpw9FRUWEw2F2795Nnz59AFi5ciXdu3ev9n2SpKCozHv0V9+DW7VqVeY9+oEHHuDNN99k2rRp9OrVi2uvvZY///nPhMNhcnNzOe+88/j4448Jh8Oce+65XHbZZaVzM/q+LUlHZs8uSZJiYP9wl0NJSEigR48e5OXlHfZqXyNGjGDEiBFl1rVu3Zq77767dPmJJ54os/3RRx8ts7x06VJOP/10QqHQ0e+AJAXYsb5HQ/n34K++R+83ffp0IHpFxoO1a9euXK8x37clqXIMuyRJqoUONXSmqmVkZJCRkVHtzyNJQVMT79GH4vu2JFWOwxglSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICw7BLkiRJkiRJgWHYJUmSJEmSpMAw7JIkSZIkSVJgGHZJkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAiNuwq69e/cyduxYUlNTqV+/PoMHDyYnJ4dQKMSUKVNiXZ4kSaUKiw/c/mR37OqQJJW3bteB2/tKYleHpIr1f/RWrsl/nqtXTiz9a3NOr1iXpTiRFOsCKiMSiTBixAhycnIYN24c6enpTJo0ieHDhwOQmZkZ4wolSYKiEnh6Bbyw+sC6YdOhz4nwo+7QsVHsapOk492KbfDbxTDnswPrLngdruoE13WGxFDsapN0aCv+Op33H3g61mUoDsVF2PXkk08ydepUcnNz6datGwDhcJi0tDRSUlJo165djCuUJB3vSiIwZh5M31B2fQTI2QzfmwXP9IdOjWNSniQd15Ztgxvegb3FZddv2wcTlsHHO2FcJoQMvCQpEOJiGOP48eMZOXJkadAFkJiYSFpaWmmvrg4dOnDqqafSq1cvevXqxeuvvx6rciVJx6GZG8sHXfuVAAXF8MjCGi1JkvSlhz+MBl2HG7X4n3WQ89lhNkqKmY7fGcCVS/7MJTMfpcf/fIdQYlxEGKoFan3Prry8PFavXs1jjz1WbtvatWu59NJLS5cnT55M9+7da7I8SZIAmLwGEkLRHl6HUhKBuZ9D/k5o37BGS5Ok49qKbbB4a8VtEkIweXV02Lmk2mHJ01OZ+/OJ7Nmyg+Y9OjLo96NJrFuH+b96IdalKQ7U+rBr/fr1ALRs2bLM+mXLlpGfn19l83WFw2ESEuIvJe7+jz0A1K1bL8aVBJuvs4LE47l6nPqnj0lu2uqI7c64cATbc16pgYqODx7PChqP6arXdMCVpN7xbIVtSiIwLfcjHhuQUTNFHSc8nmtGEF7nTknNuKdx/zLrtiw8MAnq5x+uYv6v/07mXVcYdlXCOeeEWVX0RazLqBJ16tRhx44dR32/Wp/uNG/eHICVK1eWrotEItx7772UlJSUCbuuvvpqevTowS233MLWrVtrulRJ0nEssq+wcu2K9lVzJZKkg5VU+v25cu0kxUhJBJxXT5VU63t2ZWRkkJ6ezv33309ycjINGzZkwoQJzJ8/nwYNGtClSxcAZs2aRWpqKoWFhYwePZrbbruNv/71r5V+nqysLPr161ddu1Ftzviyc0BhoR/O1cnXWUHi8Vw9xi+Af645/HwwAHUTYM3Mf9EwuaaqCj6PZwWNx3TV21oIF7wBRYcZZg7R8+cfhDO4w9e9Snk814wgvM6bcpbx2sVjyqzrMKwv62fksm/HbppltKfnnSNY8+/sGFUYX2bMyKJV71NjXUZM1fqwKykpicmTJ3PTTTcxatQoUlNTGT16NI0bN2bVqlWlQw9TU1MBqFu3LrfccgvDhg2LZdmSpOPMiDT4Zz7Ryy8eQggY3h6DLkmqYU3rwrdS4ZWPD/0WHQISQ/Cd9jVdmaSKnHrdNzl7/A9ISE6kYNNWVk1+mwX/+3Ksy1KcqPVhF0DPnj3Jzi6b4D7++OMMGjQIgF27dlFUVESTJk2IRCK88MIL9OrVKwaVSpKOVx0bwc8y4SfzgciBHl4JRG+f2QJu7xq7+iTpeHZX9+gFQnK3HHhfhujthBA8fAa0PSGGBUoqZ9p3/m+sS1Aci4uw66sKCgpYvnw5o0ePBmDTpk1ceumlFBcXU1xcTNeuXfn9738f2yIlScedC9pCp0bwjzUw4xPYWxINwS7rABe0gaRaP1OmJAVT/ST4/dnw2vrokPM1O6FeAgw+GS5Pi75XS5KCIy7DrgULFlBcXFw6OX3Hjh2ZP39+jKuSJAk6N4EHekb/JEm1R51EuLhd9E+SFGxxGXb16dOHSKSCGSYlSZIkSZJ0XHJAhSRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYZckSZIkSZICw7BLOkZZWVmkpaURDocZNWpUue0TJ05k+vTpADz00EMMGDCA22+/vVy7Dz/8kH79+nHOOeewdu1aAMLhMOFwmG7dujF69OjStrm5uSQnJ5cuZ2RklLbdsmULW7Zs4Uc/+lEV76kkSZKkeHI05yoA//rXv+jcuXO5di+88AJpaWnccMMNpet+/OMf07dvXwYMGMDChQsBuPXWW9m1a1c17Il0dAy7pCpw/fXXk5WVRZMmTcjOzi6z7dVXX+Xcc89l06ZNzJs3j1mzZpGUlMTcuXPLtPvZz37Gyy+/zKOPPsr48eOB6IdTVlYWw4YN46KLLiptO2HCBL7xjW+ULrdp06a0bUpKCikpKWzdupWdO3dW415LkiRJqu0qc66y3z//+U9SU1PLPcZ5553Hm2++WWbdjTfeyOzZs3n22Wd5+OGHARg6dCh///vfq2EvpKNj2CVVoe7du7N+/frS5S1btlCvXj1CoRBz585l0KBBAAwePJicnJwy9921axctW7akZ8+erFy5ssy2rKwswuEwAHl5eZx44ok0atSodPumTZsYOHAg99xzD5FIBIA+ffqQlZVVDXupoDvSL4APPvggeXl5h71/Tk4O/fr1o2/fvowZM+aQbW6//XYGDBjAQw89BMAf//hHzj33XMLhMPv27WPp0qWloa8kSZKOXUXnKgBvvfUW/fv3JyGhfEzQvHlzkpKSyqzr0KEDAImJiaWPMXDgQF5//fVq2gOp8gy7pCqUnZ1Nenp66fLKlStp3749AFu3bqVx48YANGrUiK1bt5a5b0lJySFv73+MOnXqAPC73/2O2267rcx9Z86cycyZM9mzZw9Tp04FoH379qxYsaLqdk7HlcP9AlhSUsKCBQsO2b19v8zMTN59911mz55NdnY227dvL7N97ty5JCUlMWvWLObNm0d+fj4LFy7kv//9L1lZWSQnJ5ORkcG8efNKw1tJkiQdm4rOVQCeeeaZQ/7QeSRjx47llltuAaBBgwZ88cUXx16sdIwMu6Qq8PTTTxMOh2nTpg29evU6ZJumTZuWnvTv2LGDpk2bltl+8C8oB9+eMmUKF198MQAbNmwAoHXr1mXu26xZMyDabXjx4sXHtC/Swb76C+CHH37IKaecUuF99s8nV1xczMknn0yDBg3KbH///fcZPHgwAIMGDWLKlCns2rWLwYMHM27cuNJ2HTt29HiWJEk6RpU5V5k7dy5du3alXr16R/XYf/rTn0hLS6Nfv35VUKlUdQy7pCqwvxfML37xizLr09PTyc/PB+D0009n5syZAMyYMYPevXuXadugQQM2b97MggULyvziMnXq1NL5upYsWUJubi4XXHABubm53HHHHezbt4/CwkIg+mtNWloaAPn5+RX2vpEq46u/AObl5ZV2Wa/IpEmTyMjIoGnTpuW6vH+1l+POnTsJhUK89dZbrF69mtzcXMDeiZIkSVWhMucqixYt4s033yw9z3jwwQeP+LjZ2dlMnTq1zI+Vu3fvLvejvhQLhl1SNUpJSWH37t1AtDdWjx49GDBgAIWFhZxxxhls3LiRRx55BIh2/73kkku44447uOeeewD47LPPSE5OpkmTJgAMGTKEd955h2nTptGrVy8ee+wxtm3bRt++fRk4cCDLly9n+PDhALz33nul83xJR6syvwAuWbKk9Cqg+/9++ctfAnDVVVexbNkyNmzYUHp1nv2+2suxSZMmpfPZ7T+OJUmSVL0OPle57rrrmDFjRul5xgMPPADAnXfeCcAbb7zByJEjee2110qHOt53333k5+czePDg0qvNz5w5k/PPPz8GeyOVlXTkJpIqsv8k/3CGDRvG9OnTGTJkCGPHjmXs2LGl21q3bs3dd98NHJjn6GAtWrRg2rRph3zc/ZcIbtGiBR988EGZbVu2bKFp06ZlJrGXjsb1119/yMnlO3fuzEsvvQRA165dD3kRhMLCQurWrUtCQgKNGjUq1x2+d+/ePP/88wwdOpSZM2dy11138eKLLwKwcOFCrrzySiDaO9Eu8ZIkSV/f0Zyr7Lf/PAPgN7/5DQDnn39+uRDr7bffLvd4r776qhcZUq1gzy6pml177bVlPjxqQkpKCr/97W9r9Dl1fOjZs+cRe1698sorhMNhBg4cSNu2bencuXOZXoxnnnkmhYWFDBgwgJ49e9KnTx+KiooIh8Ps3r2bPn36ANFJU7t3717t+yRJknS8qupzlSeeeIKGDRtW2eNJX5c9uyRJZVT0C2BCQgI9evQgLy/vsHPCjRgxghEjRpRZd3AvRoh+ETrYo48+WmZ56dKlnH766aWXsZYkSZKkyjLskiQdlUMNb6xqGRkZZGRkVPvzSJIkSQoehzFKkiRJkiQpMAy7JEmSJEmSFBiGXZIkSZIkSQoMwy5JkiRJkiQFhmGXJEmSJEmSAsOwS5IkSZIkSYFh2CVJkiRJkqTAMOySJEmSJElSYBh2SZIkSZIkKTAMuyRJkiRJkhQYhl2SJEmSJEkKDMMuSZIkSZIkBUbchF179+5l7NixpKamUr9+fQYPHkxOTg6hUIgpU6bEujwF2La9B24XlcSuDqkq7C0+cHtXUezqkCRJ0rHbc9B3uz1+t5NKJcW6gMqIRCKMGDGCnJwcxo0bR3p6OpMmTWL48OEAZGZmxrhCBdHGAvj9Unhj/YF1Q9+EKzvByE6QEIpdbdLR2lsMT+fBi6sPrDt/Gnw7FW7JgCZ1YlebJEmSjk5BEfxxObycf2Dd+a/Dxe3h5lOhQVyc6VdO23O/Qea936Vxp5Mp2lnAoj+8yuIJr8S6LNVycfG/wJNPPsnUqVPJzc2lW7duAITDYdLS0khJSaFdu3YxrlBBs3E3jJoFXxTCwZ25NhfCY0tg5Xb4aSaEDLwUB4pK4Ic58P7msusLS+ClfJj7OTzT38BLkiQpHuwpgptnw+KtEDlo/e5ieOEjyP0c/tgvGIHXyYN6cvYjN/LOHY+zMXsxSfXrckKbFrEuS3EgLoYxjh8/npEjR5YGXQCJiYmkpaWV9uras2cPN998M507d+a0007jBz/4QazKVQD8elH5oOtgU9fB2xtrtCTpa3s5v3zQtV8E+Hgn/GFZjZYkSZKkr+mvH8GirWWDrv0iwLJt8JeVNVxUNcm857ssePSffPLOQiLFJezbWcDW5WtjXZbiQK0Pu/Ly8li9ejWXXnppuW1r164tDbvuuece6tWrx4oVK1i4cCE///nPa7pUBcSnBdEgq6LpuRJC8OKamqpIOjb/WA0VdUKMAK+ujXaHlyRJUu1VHIHJqytuEwH+uSb+5xtOql+XFr06Uf/Epgyf9TuuWPAUg5+9l4apLWNdmuJAre/YuH59dMKkli3LHtDLli0jPz+fzMxMdu7cyV/+8hfWrVtH6MtxZa1atTqq5wmHwyQk1Prsr5zu/9gDQN269WJcSXA07PVN0h6oeAx4SQTe/WgLdcMn1VBV0teUmMRpL+w6YrM9xdA643T2fLyoBoqSqo6fgwoaj2kFicdz1Utq0pKMp47cs+mLvdCkTUeKtqw/YtvaoFNSM+5p3L/MujpNTyCUkED7b/XhzSt/QcHn2+j9s+9xztN38+r5d8eo0vhwzjlhVhV9EesyqkSdOnXYsWPHUd+v1qc7zZs3B2DlygP9MCORCPfeey8lJSVkZmayatUqmjdvzk9/+lPOOOMMwuEw77zzTqxKVrwrqWT3lpLiI7eRYi1SQiRSuZ/1Ih7TkiRJtVqk+Ci64sf5d7t9O6Nh6ZKnprJz3WaKC/Yy7+FJND8tzXm7dES1vmdXRkYG6enp3H///SQnJ9OwYUMmTJjA/PnzadCgAV26dCE3N5ePPvqIzMxMHnnkEd5//32GDh3KypUrady4caWeJysri379+lXz3lS9M77sgFRYWBjbQgJk5z745uvRybsPJwEY1u1Ecn3dFQdufBfmf17x0NwWdeG9vFySav1PIFJZfg4qaDymFSQez1UvEoErs2DVjkPP2QXR6SvaN4Q5G/Pj5oJam3KW8drFY8qs27djNzvXfhrdaR2VGTOyaNX71FiXEVO1/rQmKSmJyZMnc9JJJzFq1ChGjx7NhRdeyKBBg+jRowcJCQm0a9eOpKQkrrzySgD69OlDixYtWLFiRYyrVzxqmBy9ZG9FnwslwOVpNVWRdGyu7Fhx0AVwRUcMuiRJkmq5UAiu6nT4oAui267sGIwrxy//yxtk3PAtGpzcnMS6yWTe810++3AVu9Z/FuvSVMvV+p5dAD179iQ7O7vMuscff5xBgwYB0KJFC8455xzefPNNzj//fFasWMGnn35Kenp6LMpVANyRASu2Qe6WaOi1/8MkIRSdr+uu7tC9WSwrlCovfBJclw7Proz+wrE/+Np/O9warukUu/okSZJUeUNTYeEX0StuH+q73dBUGN4+dvVVpYVPTKFOk4YMe+NXEErg05xlzLj+kViXpTgQF2HXVxUUFLB8+XJGjx5duu4Pf/gD3//+97nzzjtJTk5m4sSJNG3aNGY1Kr7VS4InzoYpH0evZJe/ExJD0L8VfLcjnOEQccWZ27pCjxT4+2qY+1k0tD2lSbSH4rdSo8e3JEmSar9QCO7vAb1bRL/bLdgSXd+9WbS3/vknB6NXFwCRCB88+Fc+ePCvsa5EcSYuw64FCxZQXFxMZmZm6bqOHTuSlZUVu6IUOHUTo0HA5WnRYCBEgD40dFwa2Dr6F4lEeysmeDxLkiTFpVAIzmsT/ds/pZXnKtIBcRl29enTh4iT1KkGGQooSEKhiuekkyRJUvww5JLKczpiSZIkSZIkBYZhlyRJkiRJkgLDsEuSJEmSJEmBYdglSZIkSZKkwDDskiRJkiRJUmAYdkmSJEmSJCkwDLskSZIkSZIUGIZdkiRJkiRJCgzDLkmSJEmSJAWGYVeAZWVlkZaWRjgcZtSoUeW2T5w4kenTpwPQrFkzwuEw559/frl2L774Ir179+ass87ivffeA+B3v/sdZ511Fv3792flypUUFRVxww03VO8OSZIkSQqEozlXAfjXv/5F586dy7V74YUXSEtLK3Mu8uMf/5i+ffsyYMAAFi5cCMCtt97Krl27qmFPJNVGhl0Bd/3115OVlUWTJk3Izs4us+3VV1/l3HPPBeD0008nKyuLN954o9xjPPHEE8ycOZOXXnqJX//61wA8//zzZGdn86tf/Yo//OEPJCUlceKJJ7Jq1arq3ylJkiRJca+y5yoA//znP0lNTS33GOeddx5vvvlmmXU33ngjs2fP5tlnn+Xhhx8GYOjQofz973+vhr2QVBsZdh0nunfvzvr160uXt2zZQr169QiFQgB8+OGHDBgwgN/85jfl7tuhQwd27drFtm3bSElJASA1NZXCwsIy68LhMK+99loN7I0kSZVzpJ4DDz74IHl5eRU+xu23386AAQN46KGHym3LycmhX79+9O3blzFjxvDOO+9w1lln0bdv39LP1GnTphEOhwmHwzRv3pzc3FyWLl3K+PHjq2YndVyp7mN6v0cffZQhQ4ZQUFDARRddxKBBg/je974HwL59+7j88ssJh8M88sgjAB7TOiZHOld566236N+/PwkJ5U9fmzdvTlJSUpl1HTp0ACAxMbH0MQYOHMjrr79eTXsgqbYx7DpOZGdnk56eXrq8cuVK2rdvX7q8YsUKsrKyeOedd1i0aFGZ+w4dOpTMzEyGDBnCrbfeCkD//v3JyMjg5ptv5rrrrgOgffv2rFixovp3RpKko3C4ngMlJSUsWLDgkMNi9ps7dy5JSUnMmjWLefPmsWnTpjLbMzMzeffdd5k9ezbZ2dm0a9eOmTNnMnv2bP7973+ze/duLrjgArKyspgxYwYdO3akZ8+eZGRkMG/ePCKRSLXtt4KrOo9piIZZubm5ALzxxhv079+ft99+m+TkZBYtWsRLL71E3759ycrK4oMPPmDz5s0e0zomRzpXeeaZZw4Z7h7J2LFjueWWWwBo0KABX3zxxbEXKykuGHYF3NNPP004HKZNmzb06tXrsO2aNWtGYmIiF110EUuWLCmzbfz48SxdupQ5c+YwduxYtm/fzj//+U/y8vJ4+eWXGTduXPXuhCRJVeCrPQc+/PBDTjnllArv8/777zN48GAABg0axAcffFBme3JyMgDFxcWcfPLJnHzyydSpUweI9ig4uBfCnDlzOOOMM0p7GXTs2JHFixcf+47puFUdxzRE50q68sorAUhLSyud52jnzp00adKE1atXc9pppwGQkZHBnDlzAI9pHb3KnKvMnTuXrl27Uq9evaN67D/96U+kpaXRr1+/KqhUUrwx7Aq4/b/8/eIXvyizPj09nfz8fAB2795NcXExEP1VJS0trUzbevXqUb9+fRo3bsyuXbsIhUKccMIJJCUlkZKSwtatWwHIz8+v8JdESZJi6as9B/Ly8kqHuhzO1q1bady4MQCNGjUq/cw72KRJk8jIyKBp06alQ2nefPNNOnXqVObkbMqUKVx88cWly/aI1rGqjmO6pKSE119/nW9+85tA9DvjrFmzyMjIIBQKkZqaSpcuXXj77beJRCLMmjWLbdu2AR7TOnqVOVdZtGgRb775JhdccAG5ubk8+OCDR3zc7Oxspk6dWuZH+d27d9O0adOqLF9SLWbYdZxKSUlh9+7dAKxatYrevXvTv39/mjZtyplnnsnGjRtL52C49tpr6du3L4MHD+ZHP/oRjRo14uyzz6Zfv35cccUV3HXXXUB0DokLL7wwZvskSdKhVKbnwJIlS0rn1dr/98tf/pKmTZuyfft2AHbs2HHIE6WrrrqKZcuWsWHDBhYuXMi6det4+OGHy82DOWPGjNIeNdKxqM5j+qWXXmLYsGGly8899xxXXHEFS5cupUWLFsyePZthw4axefNmzjvvPE488URatmxZXbuq49TB5yrXXXcdM2bMYNq0afTq1YsHHngAgDvvvBOIDrUdOXIkr732WulQx/vuu4/8/HwGDx7M7bffDsDMmTMPeeV5ScGUdOQmilf7v9gczrBhw5g+fTpDhgwp14W9devW3H333QDccMMNZS7l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", "text/plain": [ "
" ] @@ -776,10 +776,10 @@ "execution_count": 18, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:51.796158Z", - "iopub.status.busy": "2024-08-06T20:19:51.795776Z", - "iopub.status.idle": "2024-08-06T20:19:52.061962Z", - "shell.execute_reply": "2024-08-06T20:19:52.061284Z" + "iopub.execute_input": "2024-08-06T20:24:56.960807Z", + "iopub.status.busy": "2024-08-06T20:24:56.960436Z", + "iopub.status.idle": "2024-08-06T20:24:57.222242Z", + "shell.execute_reply": "2024-08-06T20:24:57.221590Z" } }, "outputs": [ diff --git a/dev/explanations/state-vectors-and-gates.html b/dev/explanations/state-vectors-and-gates.html index 6f884680b..ef864de19 100644 --- a/dev/explanations/state-vectors-and-gates.html +++ b/dev/explanations/state-vectors-and-gates.html @@ -6,7 +6,7 @@ - State vectors and gates - ffsim 0.0.44 documentation + State vectors and gates - ffsim 0.0.45.dev0 documentation @@ -167,7 +167,7 @@
@@ -191,7 +191,7 @@ diff --git a/dev/explanations/state-vectors-and-gates.ipynb b/dev/explanations/state-vectors-and-gates.ipynb index a79d24165..c595801cd 100644 --- a/dev/explanations/state-vectors-and-gates.ipynb +++ b/dev/explanations/state-vectors-and-gates.ipynb @@ -26,10 +26,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:54.687197Z", - "iopub.status.busy": "2024-08-06T20:19:54.686994Z", - "iopub.status.idle": "2024-08-06T20:19:55.405142Z", - "shell.execute_reply": "2024-08-06T20:19:55.404502Z" + "iopub.execute_input": "2024-08-06T20:25:00.008699Z", + "iopub.status.busy": "2024-08-06T20:25:00.008503Z", + "iopub.status.idle": "2024-08-06T20:25:00.743888Z", + "shell.execute_reply": "2024-08-06T20:25:00.743249Z" } }, "outputs": [ @@ -74,10 +74,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.407935Z", - "iopub.status.busy": "2024-08-06T20:19:55.407471Z", - "iopub.status.idle": "2024-08-06T20:19:55.414290Z", - "shell.execute_reply": "2024-08-06T20:19:55.413820Z" + "iopub.execute_input": "2024-08-06T20:25:00.746541Z", + "iopub.status.busy": "2024-08-06T20:25:00.746082Z", + "iopub.status.idle": "2024-08-06T20:25:00.753182Z", + "shell.execute_reply": "2024-08-06T20:25:00.752676Z" } }, "outputs": [ @@ -120,10 +120,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.416776Z", - "iopub.status.busy": "2024-08-06T20:19:55.416301Z", - "iopub.status.idle": "2024-08-06T20:19:55.420840Z", - "shell.execute_reply": "2024-08-06T20:19:55.420310Z" + "iopub.execute_input": "2024-08-06T20:25:00.755866Z", + "iopub.status.busy": "2024-08-06T20:25:00.755403Z", + "iopub.status.idle": "2024-08-06T20:25:00.759929Z", + "shell.execute_reply": "2024-08-06T20:25:00.759371Z" } }, "outputs": [ @@ -157,10 +157,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.423075Z", - "iopub.status.busy": "2024-08-06T20:19:55.422714Z", - "iopub.status.idle": "2024-08-06T20:19:55.426715Z", - "shell.execute_reply": "2024-08-06T20:19:55.426123Z" + "iopub.execute_input": "2024-08-06T20:25:00.762383Z", + "iopub.status.busy": "2024-08-06T20:25:00.761993Z", + "iopub.status.idle": "2024-08-06T20:25:00.766341Z", + "shell.execute_reply": "2024-08-06T20:25:00.765755Z" } }, "outputs": [ @@ -199,10 +199,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.429120Z", - "iopub.status.busy": "2024-08-06T20:19:55.428758Z", - "iopub.status.idle": "2024-08-06T20:19:55.434393Z", - "shell.execute_reply": "2024-08-06T20:19:55.433917Z" + "iopub.execute_input": "2024-08-06T20:25:00.768797Z", + "iopub.status.busy": "2024-08-06T20:25:00.768460Z", + "iopub.status.idle": "2024-08-06T20:25:00.774927Z", + "shell.execute_reply": "2024-08-06T20:25:00.774333Z" } }, "outputs": [ @@ -245,10 +245,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.436453Z", - "iopub.status.busy": "2024-08-06T20:19:55.436261Z", - "iopub.status.idle": "2024-08-06T20:19:55.441949Z", - "shell.execute_reply": "2024-08-06T20:19:55.441439Z" + "iopub.execute_input": "2024-08-06T20:25:00.777387Z", + "iopub.status.busy": "2024-08-06T20:25:00.776944Z", + "iopub.status.idle": "2024-08-06T20:25:00.782780Z", + "shell.execute_reply": "2024-08-06T20:25:00.782274Z" } }, "outputs": [ @@ -293,10 +293,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:19:55.444250Z", - "iopub.status.busy": "2024-08-06T20:19:55.443899Z", - "iopub.status.idle": "2024-08-06T20:19:55.448729Z", - "shell.execute_reply": "2024-08-06T20:19:55.448248Z" + "iopub.execute_input": "2024-08-06T20:25:00.785105Z", + "iopub.status.busy": "2024-08-06T20:25:00.784757Z", + "iopub.status.idle": "2024-08-06T20:25:00.789648Z", + "shell.execute_reply": "2024-08-06T20:25:00.789148Z" } }, "outputs": [ diff --git a/dev/genindex.html b/dev/genindex.html index a8814b89c..7bc996a67 100644 --- a/dev/genindex.html +++ b/dev/genindex.html @@ -4,7 +4,7 @@ - Index - ffsim 0.0.44 documentation + Index - ffsim 0.0.45.dev0 documentation @@ -164,7 +164,7 @@
@@ -188,7 +188,7 @@ -
+
diff --git a/dev/how-to-guides/entanglement-forging.html b/dev/how-to-guides/entanglement-forging.html index fa800fe4b..456e6fada 100644 --- a/dev/how-to-guides/entanglement-forging.html +++ b/dev/how-to-guides/entanglement-forging.html @@ -6,7 +6,7 @@ - How to simulate entanglement forging - ffsim 0.0.44 documentation + How to simulate entanglement forging - ffsim 0.0.45.dev0 documentation @@ -167,7 +167,7 @@
@@ -191,7 +191,7 @@
@@ -404,17 +404,17 @@

How to use the FermionOperator class
 FermionOperator({
-    (des_a(3), des_b(3)): 0-1.25j,
+    (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,
+    (cre_a(3), des_a(0)): 0+3j,
+    (cre_b(1), des_b(5), cre_a(4)): 12-12j,
     (cre_a(3), des_a(0), cre_b(2)): -1,
+    (cre_b(2)): -5,
     (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,
     (cre_a(0), des_a(3), cre_b(2)): 2,
-    (cre_a(3), des_a(0)): 0+3j,
-    (cre_b(2)): -5,
+    (des_a(3), des_b(3)): 0-1.25j,
     (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,
     (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,
-    (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,
-    (cre_a(0), des_a(3)): 0-6j,
-    (cre_b(1), des_b(5), cre_a(4)): 12-12j
+    (cre_a(0), des_a(3)): 0-6j
 })
 

@@ -435,16 +435,16 @@

How to use the FermionOperator class
 FermionOperator({
-    (cre_a(3), des_a(0)): 0+3j,
+    (cre_b(1), cre_a(4), des_b(5)): -12+12j,
+    (des_b(3), des_a(3)): 0+1.25j,
     (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,
-    (cre_a(0), des_a(3)): 0-6j,
-    (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,
-    (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,
     (cre_b(2), cre_a(3), des_a(0)): -1,
+    (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,
     (cre_b(2)): -5,
-    (des_b(3), des_a(3)): 0+1.25j,
-    (cre_b(1), cre_a(4), des_b(5)): -12+12j,
-    (cre_b(2), cre_a(0), des_a(3)): 2
+    (cre_a(3), des_a(0)): 0+3j,
+    (cre_b(2), cre_a(0), des_a(3)): 2,
+    (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,
+    (cre_a(0), des_a(3)): 0-6j
 })
 

@@ -513,11 +513,11 @@

How to use the FermionOperator class
-array([0.        +0.j        , 0.        +0.j        ,
-       0.        +0.j        , 0.        +0.j        ,
-       0.11769439-0.07358983j, 0.        +0.j        ,
-       0.        +0.j        , 0.        +0.j        ,
-       0.        +0.j        ])
+array([ 0.        +0.j        ,  0.        +0.j        ,
+        0.        +0.j        ,  0.        +0.j        ,
+       -0.00088962+0.08340145j,  0.        +0.j        ,
+        0.        +0.j        ,  0.        +0.j        ,
+        0.        +0.j        ])
 

It can also be passed into most linear algebra routines in scipy.sparse.linalg.

@@ -599,7 +599,7 @@

How to use the FermionOperator class +

diff --git a/dev/how-to-guides/fermion-operator.ipynb b/dev/how-to-guides/fermion-operator.ipynb index ef9345df2..e20260b88 100644 --- a/dev/how-to-guides/fermion-operator.ipynb +++ b/dev/how-to-guides/fermion-operator.ipynb @@ -29,10 +29,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:07.941851Z", - "iopub.status.busy": "2024-08-06T20:20:07.941620Z", - "iopub.status.idle": "2024-08-06T20:20:08.661709Z", - "shell.execute_reply": "2024-08-06T20:20:08.661052Z" + "iopub.execute_input": "2024-08-06T20:25:13.320586Z", + "iopub.status.busy": "2024-08-06T20:25:13.320380Z", + "iopub.status.idle": "2024-08-06T20:25:14.067462Z", + "shell.execute_reply": "2024-08-06T20:25:14.066825Z" } }, "outputs": [ @@ -76,10 +76,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.664426Z", - "iopub.status.busy": "2024-08-06T20:20:08.663960Z", - "iopub.status.idle": "2024-08-06T20:20:08.668044Z", - "shell.execute_reply": "2024-08-06T20:20:08.667469Z" + "iopub.execute_input": "2024-08-06T20:25:14.070147Z", + "iopub.status.busy": "2024-08-06T20:25:14.069664Z", + "iopub.status.idle": "2024-08-06T20:25:14.073747Z", + "shell.execute_reply": "2024-08-06T20:25:14.073222Z" } }, "outputs": [ @@ -110,10 +110,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.670707Z", - "iopub.status.busy": "2024-08-06T20:20:08.670147Z", - "iopub.status.idle": "2024-08-06T20:20:08.674594Z", - "shell.execute_reply": "2024-08-06T20:20:08.674014Z" + "iopub.execute_input": "2024-08-06T20:25:14.076104Z", + "iopub.status.busy": "2024-08-06T20:25:14.075743Z", + "iopub.status.idle": "2024-08-06T20:25:14.080135Z", + "shell.execute_reply": "2024-08-06T20:25:14.079561Z" } }, "outputs": [ @@ -121,17 +121,17 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (des_a(3), des_b(3)): 0.0625,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", + " (cre_a(3), des_a(0)): -0.5,\n", + " (cre_b(1), des_b(5), cre_a(4)): 2+2j,\n", " (cre_a(3), des_a(0), cre_b(2)): 0-0.25j,\n", + " (cre_b(2)): 0-0.25j,\n", " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0.0625,\n", " (cre_a(0), des_a(3), cre_b(2)): 0+0.5j,\n", - " (cre_a(3), des_a(0)): -0.5,\n", - " (cre_b(2)): 0-0.25j,\n", + " (des_a(3), des_b(3)): 0.0625,\n", " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -0.25-0.25j,\n", " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): -1+1j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): -0.125,\n", - " (cre_a(0), des_a(3)): 1,\n", - " (cre_b(1), des_b(5), cre_a(4)): 2+2j\n", + " (cre_a(0), des_a(3)): 1\n", "})" ] }, @@ -170,10 +170,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.676869Z", - "iopub.status.busy": "2024-08-06T20:20:08.676533Z", - "iopub.status.idle": "2024-08-06T20:20:08.680517Z", - "shell.execute_reply": "2024-08-06T20:20:08.679934Z" + "iopub.execute_input": "2024-08-06T20:25:14.082402Z", + "iopub.status.busy": "2024-08-06T20:25:14.082075Z", + "iopub.status.idle": "2024-08-06T20:25:14.085920Z", + "shell.execute_reply": "2024-08-06T20:25:14.085452Z" } }, "outputs": [ @@ -181,17 +181,17 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (des_a(3), des_b(3)): 0-1.25j,\n", + " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", + " (cre_a(3), des_a(0)): 0+3j,\n", + " (cre_b(1), des_b(5), cre_a(4)): 12-12j,\n", " (cre_a(3), des_a(0), cre_b(2)): -1,\n", + " (cre_b(2)): -5,\n", " (cre_a(3), des_a(0), des_a(3), des_b(3)): 0-0.25j,\n", " (cre_a(0), des_a(3), cre_b(2)): 2,\n", - " (cre_a(3), des_a(0)): 0+3j,\n", - " (cre_b(2)): -5,\n", + " (des_a(3), des_b(3)): 0-1.25j,\n", " (cre_b(1), des_b(5), cre_a(4), des_a(3), des_b(3)): -1+1j,\n", " (cre_b(1), des_b(5), cre_a(4), cre_b(2)): 4+4j,\n", - " (cre_a(0), des_a(3), des_a(3), des_b(3)): 0+0.5j,\n", - " (cre_a(0), des_a(3)): 0-6j,\n", - " (cre_b(1), des_b(5), cre_a(4)): 12-12j\n", + " (cre_a(0), des_a(3)): 0-6j\n", "})" ] }, @@ -220,10 +220,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.682858Z", - "iopub.status.busy": "2024-08-06T20:20:08.682490Z", - "iopub.status.idle": "2024-08-06T20:20:08.686168Z", - "shell.execute_reply": "2024-08-06T20:20:08.685696Z" + "iopub.execute_input": "2024-08-06T20:25:14.088055Z", + "iopub.status.busy": "2024-08-06T20:25:14.087867Z", + "iopub.status.idle": "2024-08-06T20:25:14.091687Z", + "shell.execute_reply": "2024-08-06T20:25:14.091150Z" } }, "outputs": [ @@ -231,16 +231,16 @@ "data": { "text/plain": [ "FermionOperator({\n", - " (cre_a(3), des_a(0)): 0+3j,\n", + " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", + " (des_b(3), des_a(3)): 0+1.25j,\n", " (cre_b(2), cre_b(1), cre_a(4), des_b(5)): 4+4j,\n", - " (cre_a(0), des_a(3)): 0-6j,\n", - " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n", - " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", " (cre_b(2), cre_a(3), des_a(0)): -1,\n", + " (cre_a(3), des_b(3), des_a(3), des_a(0)): 0+0.25j,\n", " (cre_b(2)): -5,\n", - " (des_b(3), des_a(3)): 0+1.25j,\n", - " (cre_b(1), cre_a(4), des_b(5)): -12+12j,\n", - " (cre_b(2), cre_a(0), des_a(3)): 2\n", + " (cre_a(3), des_a(0)): 0+3j,\n", + " (cre_b(2), cre_a(0), des_a(3)): 2,\n", + " (cre_b(1), cre_a(4), des_b(5), des_b(3), des_a(3)): -1+1j,\n", + " (cre_a(0), des_a(3)): 0-6j\n", "})" ] }, @@ -265,10 +265,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.688423Z", - "iopub.status.busy": "2024-08-06T20:20:08.688065Z", - "iopub.status.idle": "2024-08-06T20:20:08.691204Z", - "shell.execute_reply": "2024-08-06T20:20:08.690607Z" + "iopub.execute_input": "2024-08-06T20:25:14.093979Z", + "iopub.status.busy": "2024-08-06T20:25:14.093641Z", + "iopub.status.idle": "2024-08-06T20:25:14.096761Z", + "shell.execute_reply": "2024-08-06T20:25:14.096218Z" } }, "outputs": [ @@ -298,10 +298,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.693554Z", - "iopub.status.busy": "2024-08-06T20:20:08.693182Z", - "iopub.status.idle": "2024-08-06T20:20:08.697417Z", - "shell.execute_reply": "2024-08-06T20:20:08.696827Z" + "iopub.execute_input": "2024-08-06T20:25:14.099163Z", + "iopub.status.busy": "2024-08-06T20:25:14.098709Z", + "iopub.status.idle": "2024-08-06T20:25:14.103068Z", + "shell.execute_reply": "2024-08-06T20:25:14.102547Z" } }, "outputs": [ @@ -341,21 +341,21 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.699810Z", - "iopub.status.busy": "2024-08-06T20:20:08.699462Z", - "iopub.status.idle": "2024-08-06T20:20:08.705475Z", - "shell.execute_reply": "2024-08-06T20:20:08.704891Z" + "iopub.execute_input": "2024-08-06T20:25:14.105497Z", + "iopub.status.busy": "2024-08-06T20:25:14.105009Z", + "iopub.status.idle": "2024-08-06T20:25:14.111149Z", + "shell.execute_reply": "2024-08-06T20:25:14.110503Z" } }, "outputs": [ { "data": { "text/plain": [ - "array([0. +0.j , 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " 0.11769439-0.07358983j, 0. +0.j ,\n", - " 0. +0.j , 0. +0.j ,\n", - " 0. +0.j ])" + "array([ 0. +0.j , 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " -0.00088962+0.08340145j, 0. +0.j ,\n", + " 0. +0.j , 0. +0.j ,\n", + " 0. +0.j ])" ] }, "execution_count": 8, @@ -380,10 +380,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:08.707913Z", - "iopub.status.busy": "2024-08-06T20:20:08.707546Z", - "iopub.status.idle": "2024-08-06T20:20:08.719204Z", - "shell.execute_reply": "2024-08-06T20:20:08.718639Z" + "iopub.execute_input": "2024-08-06T20:25:14.113415Z", + "iopub.status.busy": "2024-08-06T20:25:14.113062Z", + "iopub.status.idle": "2024-08-06T20:25:14.123877Z", + "shell.execute_reply": "2024-08-06T20:25:14.123363Z" } }, "outputs": [ diff --git a/dev/how-to-guides/index.html b/dev/how-to-guides/index.html index 0f742d850..c1dec2694 100644 --- a/dev/how-to-guides/index.html +++ b/dev/how-to-guides/index.html @@ -6,7 +6,7 @@ - How-to guides - ffsim 0.0.44 documentation + How-to guides - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
diff --git a/dev/how-to-guides/lucj.ipynb b/dev/how-to-guides/lucj.ipynb index e0fd284e6..044512cc9 100644 --- a/dev/how-to-guides/lucj.ipynb +++ b/dev/how-to-guides/lucj.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:10.429132Z", - "iopub.status.busy": "2024-08-06T20:20:10.428928Z", - "iopub.status.idle": "2024-08-06T20:20:11.425293Z", - "shell.execute_reply": "2024-08-06T20:20:11.424697Z" + "iopub.execute_input": "2024-08-06T20:25:15.834966Z", + "iopub.status.busy": "2024-08-06T20:25:15.834769Z", + "iopub.status.idle": "2024-08-06T20:25:16.835062Z", + "shell.execute_reply": "2024-08-06T20:25:16.834392Z" } }, "outputs": [ @@ -27,15 +27,15 @@ "name": "stdout", "output_type": "stream", "text": [ - "converged SCF energy = -77.8266321248745\n" + "converged SCF energy = -77.8266321248744\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Parsing /tmp/tmp_ubiqe0e\n", - "converged SCF energy = -77.8266321248744\n" + "Parsing /tmp/tmpjm80hdau\n", + "converged SCF energy = -77.8266321248745\n" ] }, { @@ -121,10 +121,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:11.428777Z", - "iopub.status.busy": "2024-08-06T20:20:11.428295Z", - "iopub.status.idle": "2024-08-06T20:20:11.498481Z", - "shell.execute_reply": "2024-08-06T20:20:11.497936Z" + "iopub.execute_input": "2024-08-06T20:25:16.838384Z", + "iopub.status.busy": "2024-08-06T20:25:16.837864Z", + "iopub.status.idle": "2024-08-06T20:25:16.909058Z", + "shell.execute_reply": "2024-08-06T20:25:16.908418Z" } }, "outputs": [ @@ -132,14 +132,14 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(CCSD) = -77.87421536374032 E_corr = -0.04758323886584889\n" + "E(CCSD) = -77.87421536374028 E_corr = -0.04758323886583945\n" ] }, { "name": "stdout", "output_type": "stream", "text": [ - "Energy at initialization: -77.87160024816285\n" + "Energy at initialization: -77.87160024816274\n" ] } ], @@ -180,10 +180,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:20:11.501362Z", - "iopub.status.busy": "2024-08-06T20:20:11.501086Z", - "iopub.status.idle": "2024-08-06T20:21:21.175341Z", - "shell.execute_reply": "2024-08-06T20:21:21.174694Z" + "iopub.execute_input": "2024-08-06T20:25:16.912321Z", + "iopub.status.busy": "2024-08-06T20:25:16.912065Z", + "iopub.status.idle": "2024-08-06T20:26:30.544833Z", + "shell.execute_reply": "2024-08-06T20:26:30.544231Z" } }, "outputs": [ @@ -195,10 +195,10 @@ " message: STOP: TOTAL NO. of ITERATIONS REACHED LIMIT\n", " success: False\n", " status: 1\n", - " fun: -77.87387390831138\n", - " x: [-1.152e+00 2.553e-04 ... 2.748e-04 1.287e-01]\n", + " fun: -77.87387392584009\n", + " x: [-1.152e+00 7.030e-04 ... 2.207e-04 1.287e-01]\n", " nit: 10\n", - " jac: [ 1.705e-05 7.105e-06 ... 7.105e-06 3.553e-05]\n", + " jac: [ 7.105e-06 -2.416e-05 ... 1.279e-05 2.132e-05]\n", " nfev: 949\n", " njev: 13\n", " hess_inv: <72x72 LbfgsInvHessProduct with dtype=float64>\n" @@ -242,10 +242,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:21:21.182914Z", - "iopub.status.busy": "2024-08-06T20:21:21.181929Z", - "iopub.status.idle": "2024-08-06T20:21:44.913264Z", - "shell.execute_reply": "2024-08-06T20:21:44.912553Z" + "iopub.execute_input": "2024-08-06T20:26:30.547969Z", + "iopub.status.busy": "2024-08-06T20:26:30.547611Z", + "iopub.status.idle": "2024-08-06T20:26:55.003253Z", + "shell.execute_reply": "2024-08-06T20:26:55.002543Z" } }, "outputs": [ @@ -257,10 +257,10 @@ " message: CONVERGENCE: REL_REDUCTION_OF_F_<=_FACTR*EPSMCH\n", " success: True\n", " status: 0\n", - " fun: -77.87363426644954\n", - " x: [-1.152e+00 1.641e-05 ... 3.519e-02 2.561e-01]\n", + " fun: -77.87363426645267\n", + " x: [-1.152e+00 8.332e-05 ... 3.520e-02 2.561e-01]\n", " nit: 5\n", - " jac: [ 4.263e-06 -3.411e-05 ... 5.684e-06 -4.263e-06]\n", + " jac: [ 1.279e-05 7.105e-06 ... 1.421e-06 -1.421e-06]\n", " nfev: 329\n", " njev: 7\n", " hess_inv: <46x46 LbfgsInvHessProduct with dtype=float64>\n" @@ -305,10 +305,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:21:44.916475Z", - "iopub.status.busy": "2024-08-06T20:21:44.916197Z", - "iopub.status.idle": "2024-08-06T20:22:00.857131Z", - "shell.execute_reply": "2024-08-06T20:22:00.856469Z" + "iopub.execute_input": "2024-08-06T20:26:55.006480Z", + "iopub.status.busy": "2024-08-06T20:26:55.006197Z", + "iopub.status.idle": "2024-08-06T20:27:08.491098Z", + "shell.execute_reply": "2024-08-06T20:27:08.490361Z" } }, "outputs": [ @@ -319,29 +319,29 @@ "Number of parameters: 46\n", " message: Convergence: Relative reduction of objective function <= ftol.\n", " success: True\n", - " fun: -77.87363431942123\n", - " x: [-1.150e+00 -1.196e-03 ... 3.399e-02 2.567e-01]\n", + " fun: -77.8736343245343\n", + " x: [-1.152e+00 -2.667e-04 ... 3.475e-02 2.560e-01]\n", " nit: 3\n", - " jac: [-4.559e-06 -5.093e-06 ... -5.838e-07 -2.674e-06]\n", - " nfev: 562\n", + " jac: [ 1.780e-07 -4.484e-07 ... -1.395e-07 -1.610e-07]\n", + " nfev: 523\n", " njev: 4\n", - " nlinop: 378\n", + " nlinop: 339\n", "\n", "Iteration 1\n", - " Energy: -77.87362316910543\n", - " Norm of gradient: 0.0026606424118499226\n", - " Regularization hyperparameter: 0.0007328912165354164\n", - " Variation hyperparameter: 0.9709515153370365\n", + " Energy: -77.87363082741813\n", + " Norm of gradient: 0.0014334855507404987\n", + " Regularization hyperparameter: 0.0016719665060125194\n", + " Variation hyperparameter: 0.9930289110134369\n", "Iteration 2\n", - " Energy: -77.87363391825906\n", - " Norm of gradient: 0.0002174860872736592\n", - " Regularization hyperparameter: 0.008343161337227666\n", - " Variation hyperparameter: 0.9715440087034412\n", + " Energy: -77.87363430913514\n", + " Norm of gradient: 5.823970652155262e-05\n", + " Regularization hyperparameter: 0.0033363610926438973\n", + " Variation hyperparameter: 0.9931197219175946\n", "Iteration 3\n", - " Energy: -77.87363431942123\n", - " Norm of gradient: 5.603513968594312e-05\n", - " Regularization hyperparameter: 0.008343165427075229\n", - " Variation hyperparameter: 0.9715440096318498\n" + " Energy: -77.8736343245343\n", + " Norm of gradient: 7.627953183069461e-06\n", + " Regularization hyperparameter: 0.0035195360534473106\n", + " Variation hyperparameter: 0.9931294330101719\n" ] } ], diff --git a/dev/how-to-guides/qiskit-circuits.html b/dev/how-to-guides/qiskit-circuits.html index a7573d4f3..1f3436ae8 100644 --- a/dev/how-to-guides/qiskit-circuits.html +++ b/dev/how-to-guides/qiskit-circuits.html @@ -6,7 +6,7 @@ - How to build and transpile Qiskit quantum circuits - ffsim 0.0.44 documentation + How to build and transpile Qiskit quantum circuits - ffsim 0.0.45.dev0 documentation @@ -167,7 +167,7 @@
@@ -448,7 +448,7 @@

Orbital rotation
-<qiskit.circuit.instructionset.InstructionSet at 0x7f0f8cc0d990>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f088994d7b0>
 

@@ -470,7 +470,7 @@

Number operator sum evolution
-<qiskit.circuit.instructionset.InstructionSet at 0x7f0f22ccd1b0>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f088a3233a0>
 

@@ -495,7 +495,7 @@

Diagonal Coulomb evolution
-<qiskit.circuit.instructionset.InstructionSet at 0x7f0f22c51930>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f088a4df880>
 

@@ -518,7 +518,7 @@

Spin-balanced unitary cluster Jastrow (UCJ) operator
-<qiskit.circuit.instructionset.InstructionSet at 0x7f0f22ccc190>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f088994e170>
 
@@ -541,7 +541,7 @@

Spin-unbalanced unitary cluster Jastrow (UCJ) operator
-<qiskit.circuit.instructionset.InstructionSet at 0x7f0f8cc0ea70>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f088a5df7f0>
 
@@ -568,7 +568,7 @@

Trotter simulation of double-factorized Hamiltonian
-<qiskit.circuit.instructionset.InstructionSet at 0x7f0f22ccf490>
+<qiskit.circuit.instructionset.InstructionSet at 0x7f088a323310>
 
@@ -668,7 +668,7 @@

Trotter simulation of double-factorized Hamiltonian - + diff --git a/dev/how-to-guides/qiskit-circuits.ipynb b/dev/how-to-guides/qiskit-circuits.ipynb index 7216ea390..2c56157eb 100644 --- a/dev/how-to-guides/qiskit-circuits.ipynb +++ b/dev/how-to-guides/qiskit-circuits.ipynb @@ -16,10 +16,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:02.479953Z", - "iopub.status.busy": "2024-08-06T20:22:02.479759Z", - "iopub.status.idle": "2024-08-06T20:22:03.167425Z", - "shell.execute_reply": "2024-08-06T20:22:03.166765Z" + "iopub.execute_input": "2024-08-06T20:27:10.166010Z", + "iopub.status.busy": "2024-08-06T20:27:10.165797Z", + "iopub.status.idle": "2024-08-06T20:27:10.856853Z", + "shell.execute_reply": "2024-08-06T20:27:10.856315Z" } }, "outputs": [], @@ -54,10 +54,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.170594Z", - "iopub.status.busy": "2024-08-06T20:22:03.169996Z", - "iopub.status.idle": "2024-08-06T20:22:03.746537Z", - "shell.execute_reply": "2024-08-06T20:22:03.745904Z" + "iopub.execute_input": "2024-08-06T20:27:10.860030Z", + "iopub.status.busy": "2024-08-06T20:27:10.859381Z", + "iopub.status.idle": "2024-08-06T20:27:11.438803Z", + "shell.execute_reply": "2024-08-06T20:27:11.438218Z" } }, "outputs": [ @@ -103,10 +103,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.749572Z", - "iopub.status.busy": "2024-08-06T20:22:03.748782Z", - "iopub.status.idle": "2024-08-06T20:22:03.958127Z", - "shell.execute_reply": "2024-08-06T20:22:03.957411Z" + "iopub.execute_input": "2024-08-06T20:27:11.441581Z", + "iopub.status.busy": "2024-08-06T20:27:11.441059Z", + "iopub.status.idle": "2024-08-06T20:27:11.648367Z", + "shell.execute_reply": "2024-08-06T20:27:11.647846Z" } }, "outputs": [ @@ -160,17 +160,17 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.960871Z", - "iopub.status.busy": "2024-08-06T20:22:03.960394Z", - "iopub.status.idle": "2024-08-06T20:22:03.964840Z", - "shell.execute_reply": "2024-08-06T20:22:03.964290Z" + "iopub.execute_input": "2024-08-06T20:27:11.650974Z", + "iopub.status.busy": "2024-08-06T20:27:11.650563Z", + "iopub.status.idle": "2024-08-06T20:27:11.655041Z", + "shell.execute_reply": "2024-08-06T20:27:11.654541Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 4, @@ -195,17 +195,17 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.967153Z", - "iopub.status.busy": "2024-08-06T20:22:03.966957Z", - "iopub.status.idle": "2024-08-06T20:22:03.972342Z", - "shell.execute_reply": "2024-08-06T20:22:03.971814Z" + "iopub.execute_input": "2024-08-06T20:27:11.657339Z", + "iopub.status.busy": "2024-08-06T20:27:11.656979Z", + "iopub.status.idle": "2024-08-06T20:27:11.661774Z", + "shell.execute_reply": "2024-08-06T20:27:11.661222Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 5, @@ -242,17 +242,17 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.974829Z", - "iopub.status.busy": "2024-08-06T20:22:03.974430Z", - "iopub.status.idle": "2024-08-06T20:22:03.979505Z", - "shell.execute_reply": "2024-08-06T20:22:03.978857Z" + "iopub.execute_input": "2024-08-06T20:27:11.664228Z", + "iopub.status.busy": "2024-08-06T20:27:11.663867Z", + "iopub.status.idle": "2024-08-06T20:27:11.668393Z", + "shell.execute_reply": "2024-08-06T20:27:11.667819Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 6, @@ -279,17 +279,17 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.982031Z", - "iopub.status.busy": "2024-08-06T20:22:03.981628Z", - "iopub.status.idle": "2024-08-06T20:22:03.986573Z", - "shell.execute_reply": "2024-08-06T20:22:03.985898Z" + "iopub.execute_input": "2024-08-06T20:27:11.670756Z", + "iopub.status.busy": "2024-08-06T20:27:11.670373Z", + "iopub.status.idle": "2024-08-06T20:27:11.674772Z", + "shell.execute_reply": "2024-08-06T20:27:11.674175Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 7, @@ -315,17 +315,17 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.989221Z", - "iopub.status.busy": "2024-08-06T20:22:03.988735Z", - "iopub.status.idle": "2024-08-06T20:22:03.993846Z", - "shell.execute_reply": "2024-08-06T20:22:03.993235Z" + "iopub.execute_input": "2024-08-06T20:27:11.677244Z", + "iopub.status.busy": "2024-08-06T20:27:11.676810Z", + "iopub.status.idle": "2024-08-06T20:27:11.681161Z", + "shell.execute_reply": "2024-08-06T20:27:11.680645Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 8, @@ -354,17 +354,17 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:03.996255Z", - "iopub.status.busy": "2024-08-06T20:22:03.995864Z", - "iopub.status.idle": "2024-08-06T20:22:04.001285Z", - "shell.execute_reply": "2024-08-06T20:22:04.000777Z" + "iopub.execute_input": "2024-08-06T20:27:11.683518Z", + "iopub.status.busy": "2024-08-06T20:27:11.683065Z", + "iopub.status.idle": "2024-08-06T20:27:11.688141Z", + "shell.execute_reply": "2024-08-06T20:27:11.687655Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 9, @@ -391,17 +391,17 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:04.003678Z", - "iopub.status.busy": "2024-08-06T20:22:04.003482Z", - "iopub.status.idle": "2024-08-06T20:22:04.009350Z", - "shell.execute_reply": "2024-08-06T20:22:04.008724Z" + "iopub.execute_input": "2024-08-06T20:27:11.690291Z", + "iopub.status.busy": "2024-08-06T20:27:11.690099Z", + "iopub.status.idle": "2024-08-06T20:27:11.695525Z", + "shell.execute_reply": "2024-08-06T20:27:11.694959Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 10, @@ -428,17 +428,17 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:04.012034Z", - "iopub.status.busy": "2024-08-06T20:22:04.011649Z", - "iopub.status.idle": "2024-08-06T20:22:04.017737Z", - "shell.execute_reply": "2024-08-06T20:22:04.017099Z" + "iopub.execute_input": "2024-08-06T20:27:11.697923Z", + "iopub.status.busy": "2024-08-06T20:27:11.697543Z", + "iopub.status.idle": "2024-08-06T20:27:11.703065Z", + "shell.execute_reply": "2024-08-06T20:27:11.702565Z" } }, "outputs": [ { "data": { "text/plain": [ - "" + "" ] }, "execution_count": 11, diff --git a/dev/how-to-guides/qiskit-sampler.html b/dev/how-to-guides/qiskit-sampler.html index 957fa05d6..274cfbeb4 100644 --- a/dev/how-to-guides/qiskit-sampler.html +++ b/dev/how-to-guides/qiskit-sampler.html @@ -6,7 +6,7 @@ - How to use ffsim’s Qiskit Sampler primitive - ffsim 0.0.44 documentation + How to use ffsim’s Qiskit Sampler primitive - ffsim 0.0.45.dev0 documentation @@ -167,7 +167,7 @@
diff --git a/dev/how-to-guides/qiskit-sampler.ipynb b/dev/how-to-guides/qiskit-sampler.ipynb index c68e9bd37..3e2ab84e1 100644 --- a/dev/how-to-guides/qiskit-sampler.ipynb +++ b/dev/how-to-guides/qiskit-sampler.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:06.090044Z", - "iopub.status.busy": "2024-08-06T20:22:06.089852Z", - "iopub.status.idle": "2024-08-06T20:22:06.786028Z", - "shell.execute_reply": "2024-08-06T20:22:06.785482Z" + "iopub.execute_input": "2024-08-06T20:27:13.574965Z", + "iopub.status.busy": "2024-08-06T20:27:13.574764Z", + "iopub.status.idle": "2024-08-06T20:27:14.275140Z", + "shell.execute_reply": "2024-08-06T20:27:14.274554Z" } }, "outputs": [], @@ -71,10 +71,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:06.789087Z", - "iopub.status.busy": "2024-08-06T20:22:06.788631Z", - "iopub.status.idle": "2024-08-06T20:22:06.851446Z", - "shell.execute_reply": "2024-08-06T20:22:06.850903Z" + "iopub.execute_input": "2024-08-06T20:27:14.277819Z", + "iopub.status.busy": "2024-08-06T20:27:14.277559Z", + "iopub.status.idle": "2024-08-06T20:27:14.339994Z", + "shell.execute_reply": "2024-08-06T20:27:14.339485Z" } }, "outputs": [ @@ -154,10 +154,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:06.854084Z", - "iopub.status.busy": "2024-08-06T20:22:06.853716Z", - "iopub.status.idle": "2024-08-06T20:22:07.161809Z", - "shell.execute_reply": "2024-08-06T20:22:07.161235Z" + "iopub.execute_input": "2024-08-06T20:27:14.342595Z", + "iopub.status.busy": "2024-08-06T20:27:14.342156Z", + "iopub.status.idle": "2024-08-06T20:27:14.646583Z", + "shell.execute_reply": "2024-08-06T20:27:14.645980Z" } }, "outputs": [ @@ -174,7 +174,7 @@ "text": [ "norb = 14\n", "nelec = (3, 3)\n", - "E(CCSD) = -108.9630419334854 E_corr = -0.127805362711006\n" + "E(CCSD) = -108.9630419334854 E_corr = -0.1278053627110067\n" ] }, { @@ -269,10 +269,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:07.164403Z", - "iopub.status.busy": "2024-08-06T20:22:07.164035Z", - "iopub.status.idle": "2024-08-06T20:22:07.700393Z", - "shell.execute_reply": "2024-08-06T20:22:07.699781Z" + "iopub.execute_input": "2024-08-06T20:27:14.649130Z", + "iopub.status.busy": "2024-08-06T20:27:14.648769Z", + "iopub.status.idle": "2024-08-06T20:27:15.191228Z", + "shell.execute_reply": "2024-08-06T20:27:15.190583Z" } }, "outputs": [ @@ -287,7 +287,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "SCF energy = -75.3484557048462\n" + "SCF energy = -75.3484557066644\n" ] }, { @@ -305,7 +305,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "E(UCCSD) = -75.45619739165906 E_corr = -0.107741686812878\n" + "E(UCCSD) = -75.45619739132886 E_corr = -0.10774168466442\n" ] }, { diff --git a/dev/index.html b/dev/index.html index d58f1d199..13401d02b 100644 --- a/dev/index.html +++ b/dev/index.html @@ -6,7 +6,7 @@ - ffsim 0.0.44 documentation + ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
@@ -190,7 +190,7 @@ -
+
diff --git a/dev/install.html b/dev/install.html index 8208ca3af..3ea3402c1 100644 --- a/dev/install.html +++ b/dev/install.html @@ -6,7 +6,7 @@ - Installation - ffsim 0.0.44 documentation + Installation - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
@@ -188,7 +188,7 @@ -
+
diff --git a/dev/search.html b/dev/search.html index e5d8db61c..98a128c82 100644 --- a/dev/search.html +++ b/dev/search.html @@ -7,7 +7,7 @@ -Search - ffsim 0.0.44 documentation +Search - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
+
diff --git a/dev/searchindex.js b/dev/searchindex.js index 3220d34a9..fff79976f 100644 --- a/dev/searchindex.js +++ b/dev/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"API reference": [[7, null]], "Application to the double-factorized Hamiltonian": [[8, "Application-to-the-double-factorized-Hamiltonian"]], "Application to time evolution via Trotter-Suzuki formulas": [[8, "Application-to-time-evolution-via-Trotter-Suzuki-formulas"]], "Brief background on Trotter-Suzuki formulas": [[8, "Brief-background-on-Trotter-Suzuki-formulas"]], "Build a molecule": [[15, "Build-a-molecule"]], "Build the Hamiltonian": [[23, "Build-the-Hamiltonian"]], "Choose reference occupations": [[15, "Choose-reference-occupations"]], "Circuit transpilation": [[19, "Circuit-transpilation"]], "Citing ffsim": [[21, "citing-ffsim"]], "Code example": [[21, "code-example"]], "Compute energy": [[15, "Compute-energy"]], "Contents": [[21, "contents"]], "Criteria for circuits that FfsimSampler can sample": [[20, "Criteria-for-circuits-that-FfsimSampler-can-sample"]], "Data representation": [[9, "Data-representation"]], "Diagonal Coulomb evolution": [[13, "Diagonal-Coulomb-evolution"], [19, "Diagonal-Coulomb-evolution"]], "Double-factorized representation": [[8, "Double-factorized-representation"]], "Double-factorized representation of the molecular Hamiltonian": [[8, null]], "Example of using FfsimSampler": [[20, "Example-of-using-FfsimSampler"]], "Explanations": [[10, null]], "Gates": [[14, "Gates"]], "General UCJ ansatz": [[18, "General-UCJ-ansatz"]], "Hamiltonians": [[9, null]], "Hartree-Fock and Slater determinant preparation": [[13, "Hartree-Fock-and-Slater-determinant-preparation"]], "How to build and transpile Qiskit quantum circuits": [[19, null]], "How to simulate entanglement forging": [[15, null]], "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz": [[18, null]], "How to use ffsim\u2019s Qiskit Sampler primitive": [[20, null]], "How to use the FermionOperator class": [[16, null]], "How-to guides": [[17, null]], "Implement Trotter simulation": [[23, "Implement-Trotter-simulation"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[23, null]], "Initialize ansatz operator": [[15, "Initialize-ansatz-operator"]], "Install from source": [[22, "install-from-source"]], "Installation": [[21, "installation"], [22, null]], "LUCJ ansatz": [[18, "LUCJ-ansatz"]], "Locality in the UCJ operator": [[13, "Locality-in-the-UCJ-operator"]], "Merging orbital rotations": [[13, "Merging-orbital-rotations"]], "More examples": [[20, "More-examples"]], "Number operator sum evolution": [[13, "Number-operator-sum-evolution"], [19, "Number-operator-sum-evolution"]], "Operator action via SciPy LinearOperators": [[9, "Operator-action-via-SciPy-LinearOperators"]], "Optimize energy": [[15, "Optimize-energy"]], "Optimize with the linear method": [[18, "Optimize-with-the-linear-method"]], "Orbital rotation": [[13, "Orbital-rotation"], [19, "Orbital-rotation"]], "Orbital rotations": [[12, "Orbital-rotations"]], "Orbital rotations and quadratic Hamiltonians": [[12, null]], "Overview of gates": [[19, "Overview-of-gates"]], "Pip install": [[22, "pip-install"]], "Prepare Hartree-Fock state": [[19, "Prepare-Hartree-Fock-state"]], "Prepare Slater determinant": [[19, "Prepare-Slater-determinant"]], "Qubit gate decompositions of fermionic gates": [[13, null]], "Sampling from an LUCJ circuit for a closed-shell molecule": [[20, "Sampling-from-an-LUCJ-circuit-for-a-closed-shell-molecule"]], "Sampling from an LUCJ circuit for an open-shell molecule": [[20, "Sampling-from-an-LUCJ-circuit-for-an-open-shell-molecule"]], "Spin-balanced and spin-unbalanced ansatzes": [[11, "Spin-balanced-and-spin-unbalanced-ansatzes"]], "Spin-balanced unitary cluster Jastrow (UCJ) operator": [[19, "Spin-balanced-unitary-cluster-Jastrow-(UCJ)-operator"]], "Spin-unbalanced unitary cluster Jastrow (UCJ) operator": [[19, "Spin-unbalanced-unitary-cluster-Jastrow-(UCJ)-operator"]], "State preparation gates": [[19, "State-preparation-gates"]], "State vectors": [[14, "State-vectors"]], "State vectors and gates": [[14, null]], "The general unitary cluster Jastrow (UCJ) ansatz": [[11, "The-general-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "The local UCJ (LUCJ) ansatz": [[11, "The-local-UCJ-(LUCJ)-ansatz"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[11, null]], "Time evolution by a quadratic Hamiltonian": [[12, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Treating spinless fermions": [[14, "Treating-spinless-fermions"]], "Trotter simulation of double-factorized Hamiltonian": [[13, "Trotter-simulation-of-double-factorized-Hamiltonian"], [19, "Trotter-simulation-of-double-factorized-Hamiltonian"]], "Tutorials": [[24, null]], "Unitary cluster Jastrow (UCJ) operator": [[13, "Unitary-cluster-Jastrow-(UCJ)-operator"]], "Unitary transformation gates": [[19, "Unitary-transformation-gates"]], "Use within Docker": [[22, "use-within-docker"]], "ffsim": [[0, null], [21, null]], "ffsim.contract": [[1, null]], "ffsim.linalg": [[2, null]], "ffsim.optimize": [[3, null]], "ffsim.qiskit": [[4, null]], "ffsim.random": [[5, null]], "ffsim.testing": [[6, null]]}, "docnames": ["api/ffsim", "api/ffsim.contract", "api/ffsim.linalg", "api/ffsim.optimize", "api/ffsim.qiskit", "api/ffsim.random", "api/ffsim.testing", "api/index", "explanations/double-factorized", "explanations/hamiltonians", "explanations/index", "explanations/lucj", "explanations/orbital-rotation", "explanations/qiskit-gate-decompositions", "explanations/state-vectors-and-gates", "how-to-guides/entanglement-forging", "how-to-guides/fermion-operator", "how-to-guides/index", "how-to-guides/lucj", "how-to-guides/qiskit-circuits", "how-to-guides/qiskit-sampler", "index", "install", "tutorials/double-factorized-trotter", "tutorials/index"], "envversion": {"nbsphinx": 4, "sphinx": 63, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/ffsim.rst", "api/ffsim.contract.rst", "api/ffsim.linalg.rst", "api/ffsim.optimize.rst", "api/ffsim.qiskit.rst", "api/ffsim.random.rst", "api/ffsim.testing.rst", "api/index.md", "explanations/double-factorized.ipynb", "explanations/hamiltonians.ipynb", "explanations/index.md", "explanations/lucj.ipynb", "explanations/orbital-rotation.ipynb", "explanations/qiskit-gate-decompositions.ipynb", "explanations/state-vectors-and-gates.ipynb", "how-to-guides/entanglement-forging.ipynb", "how-to-guides/fermion-operator.ipynb", "how-to-guides/index.md", "how-to-guides/lucj.ipynb", "how-to-guides/qiskit-circuits.ipynb", "how-to-guides/qiskit-sampler.ipynb", "index.md", "install.md", "tutorials/double-factorized-trotter.ipynb", "tutorials/index.md"], "indexentries": {"__init__() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.__init__", false]], "__init__() (ffsim.qiskit.diagcoulombevolutionspinlessjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.__init__", false]], "__init__() (ffsim.qiskit.ffsimsampler method)": [[4, "ffsim.qiskit.FfsimSampler.__init__", false]], "__init__() (ffsim.qiskit.givensansatzoperatorjw method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorJW.__init__", false]], "__init__() (ffsim.qiskit.givensansatzoperatorspinlessjw method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.givensansatzopjw method)": [[4, "ffsim.qiskit.GivensAnsatzOpJW.__init__", false]], "__init__() (ffsim.qiskit.givensansatzopspinlessjw method)": [[4, "ffsim.qiskit.GivensAnsatzOpSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.numnumansatzopspinbalancedjw method)": [[4, "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW.__init__", false]], "__init__() (ffsim.qiskit.numopsumevolutionjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW.__init__", false]], "__init__() (ffsim.qiskit.numopsumevolutionspinlessjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.__init__", false]], "__init__() (ffsim.qiskit.orbitalrotationspinlessjw method)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.preparehartreefockjw method)": [[4, "ffsim.qiskit.PrepareHartreeFockJW.__init__", false]], "__init__() (ffsim.qiskit.preparehartreefockspinlessjw method)": [[4, "ffsim.qiskit.PrepareHartreeFockSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.prepareslaterdeterminantjw method)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantJW.__init__", false]], "__init__() (ffsim.qiskit.prepareslaterdeterminantspinlessjw method)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.simulatetrotterdoublefactorizedjw method)": [[4, "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW.__init__", false]], "__init__() (ffsim.qiskit.ucjoperatorjw method)": [[4, "ffsim.qiskit.UCJOperatorJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinbalancedjw method)": [[4, "ffsim.qiskit.UCJOpSpinBalancedJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinlessjw method)": [[4, "ffsim.qiskit.UCJOpSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinunbalancedjw method)": [[4, "ffsim.qiskit.UCJOpSpinUnbalancedJW.__init__", false]], "__init_subclass__() (ffsim.qiskit.givensansatzoperatorjw method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorJW.__init_subclass__", false]], "__init_subclass__() (ffsim.qiskit.givensansatzoperatorspinlessjw method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW.__init_subclass__", false]], "__init_subclass__() (ffsim.qiskit.ucjoperatorjw method)": [[4, "ffsim.qiskit.UCJOperatorJW.__init_subclass__", false]], "__new__() (ffsim.qiskit.givensansatzoperatorjw static method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorJW.__new__", false]], "__new__() (ffsim.qiskit.givensansatzoperatorspinlessjw static method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW.__new__", false]], "__new__() (ffsim.qiskit.ucjoperatorjw static method)": [[4, "ffsim.qiskit.UCJOperatorJW.__new__", false]], "action (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.action", false]], "active_space (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.active_space", false]], "addresses_to_strings() (in module ffsim)": [[0, "ffsim.addresses_to_strings", false]], "alpha (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA", false]], "alpha_and_beta (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA_AND_BETA", false]], "apply_diag_coulomb_evolution() (in module ffsim)": [[0, "ffsim.apply_diag_coulomb_evolution", false]], "apply_fsim_gate() (in module ffsim)": [[0, "ffsim.apply_fsim_gate", false]], "apply_fswap_gate() (in module ffsim)": [[0, "ffsim.apply_fswap_gate", false]], "apply_givens_rotation() (in module ffsim)": [[0, "ffsim.apply_givens_rotation", false]], "apply_hop_gate() (in module ffsim)": [[0, "ffsim.apply_hop_gate", false]], "apply_matrix_to_slices() (in module ffsim.linalg)": [[2, "ffsim.linalg.apply_matrix_to_slices", false]], "apply_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_interaction", false]], "apply_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_num_interaction", false]], "apply_num_op_prod_interaction() (in module ffsim)": [[0, "ffsim.apply_num_op_prod_interaction", false]], "apply_num_op_sum_evolution() (in module ffsim)": [[0, "ffsim.apply_num_op_sum_evolution", false]], "apply_on_site_interaction() (in module ffsim)": [[0, "ffsim.apply_on_site_interaction", false]], "apply_orbital_rotation() (in module ffsim)": [[0, "ffsim.apply_orbital_rotation", false]], "apply_tunneling_interaction() (in module ffsim)": [[0, "ffsim.apply_tunneling_interaction", false]], "apply_unitary() (in module ffsim)": [[0, "ffsim.apply_unitary", false]], "approx_eq() (in module ffsim)": [[0, "ffsim.approx_eq", false]], "assert_allclose_up_to_global_phase() (in module ffsim.testing)": [[6, "ffsim.testing.assert_allclose_up_to_global_phase", false]], "atom (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.atom", false]], "basis (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.basis", false]], "beta (ffsim.spin attribute)": [[0, "ffsim.Spin.BETA", false]], "bit_array (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.BIT_ARRAY", false]], "bitstringtype (class in ffsim)": [[0, "ffsim.BitstringType", false]], "c (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.c", false]], "ccsd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_energy", false]], "ccsd_t1 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t1", false]], "ccsd_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t2", false]], "cisd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.cisd_energy", false]], "cisd_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.cisd_vec", false]], "coeffs (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.coeffs", false]], "conserves_particle_number() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_particle_number", false]], "conserves_spin_z() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_spin_z", false]], "constant (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.constant", false]], "constant (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.constant", false]], "constant (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.constant", false]], "constant (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.constant", false]], "contract_diag_coulomb() (in module ffsim.contract)": [[1, "ffsim.contract.contract_diag_coulomb", false]], "contract_num_op_sum() (in module ffsim.contract)": [[1, "ffsim.contract.contract_num_op_sum", false]], "contract_one_body() (in module ffsim.contract)": [[1, "ffsim.contract.contract_one_body", false]], "core_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.core_energy", false]], "cre() (in module ffsim)": [[0, "ffsim.cre", false]], "cre_a() (in module ffsim)": [[0, "ffsim.cre_a", false]], "cre_b() (in module ffsim)": [[0, "ffsim.cre_b", false]], "des() (in module ffsim)": [[0, "ffsim.des", false]], "des_a() (in module ffsim)": [[0, "ffsim.des_a", false]], "des_b() (in module ffsim)": [[0, "ffsim.des_b", false]], "diag() (in module ffsim)": [[0, "ffsim.diag", false]], "diag_coulomb_linop() (in module ffsim.contract)": [[1, "ffsim.contract.diag_coulomb_linop", false]], "diag_coulomb_mats (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.diag_coulomb_mats", false]], "diag_coulomb_mats_alpha_alpha (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.diag_coulomb_mats_alpha_alpha", false]], "diag_coulomb_mats_alpha_alpha (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_alpha", false]], "diag_coulomb_mats_alpha_beta (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.diag_coulomb_mats_alpha_beta", false]], "diag_coulomb_mats_alpha_beta (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_beta", false]], "diagcoulombevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW", false]], "diagcoulombevolutionspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW", false]], "diagonalcoulombhamiltonian (class in ffsim)": [[0, "ffsim.DiagonalCoulombHamiltonian", false]], "dim() (in module ffsim)": [[0, "ffsim.dim", false]], "dims() (in module ffsim)": [[0, "ffsim.dims", false]], "dipole_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.dipole_integrals", false]], "double_factorized() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized", false]], "double_factorized_t2() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2", false]], "double_factorized_t2_alpha_beta() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2_alpha_beta", false]], "doublefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.DoubleFactorizedHamiltonian", false]], "dropnegligible (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DropNegligible", false]], "expectation_one_body_power() (in module ffsim)": [[0, "ffsim.expectation_one_body_power", false]], "expectation_one_body_product() (in module ffsim)": [[0, "ffsim.expectation_one_body_product", false]], "expectation_product_state() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.expectation_product_state", false]], "expm_multiply_taylor() (in module ffsim.linalg)": [[2, "ffsim.linalg.expm_multiply_taylor", false]], "fci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_energy", false]], "fci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_vec", false]], "fermi_hubbard_1d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_1d", false]], "fermi_hubbard_2d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_2d", false]], "fermion_operator() (in module ffsim)": [[0, "ffsim.fermion_operator", false]], "fermionaction (class in ffsim)": [[0, "ffsim.FermionAction", false]], "fermionoperator (class in ffsim)": [[0, "ffsim.FermionOperator", false]], "ffsim": [[0, "module-ffsim", false]], "ffsim.contract": [[1, "module-ffsim.contract", false]], "ffsim.linalg": [[2, "module-ffsim.linalg", false]], "ffsim.optimize": [[3, "module-ffsim.optimize", false]], "ffsim.qiskit": [[4, "module-ffsim.qiskit", false]], "ffsim.random": [[5, "module-ffsim.random", false]], "ffsim.testing": [[6, "module-ffsim.testing", false]], "ffsim_vec_to_qiskit_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.ffsim_vec_to_qiskit_vec", false]], "ffsimsampler (class in ffsim.qiskit)": [[4, "ffsim.qiskit.FfsimSampler", false]], "final_orbital_rotation (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.final_orbital_rotation", false]], "final_state_vector() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.final_state_vector", false]], "from_diag_coulomb_mats() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.from_diag_coulomb_mats", false]], "from_fcidump() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_fcidump", false]], "from_fcidump() (ffsim.molecularhamiltonian static method)": [[0, "ffsim.MolecularHamiltonian.from_fcidump", false]], "from_fermion_operator() (ffsim.diagonalcoulombhamiltonian static method)": [[0, "ffsim.DiagonalCoulombHamiltonian.from_fermion_operator", false]], "from_json() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_json", false]], "from_mole() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_mole", false]], "from_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian static method)": [[0, "ffsim.DoubleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_molecular_hamiltonian() (ffsim.singlefactorizedhamiltonian static method)": [[0, "ffsim.SingleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_orbital_rotation() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.from_orbital_rotation", false]], "from_parameters() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.from_parameters", false]], "from_parameters() (ffsim.givensansatzoperator static method)": [[0, "ffsim.GivensAnsatzOperator.from_parameters", false]], "from_parameters() (ffsim.hopgateansatzoperator static method)": [[0, "ffsim.HopGateAnsatzOperator.from_parameters", false]], "from_parameters() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.from_parameters", false]], "from_parameters() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.from_parameters", false]], "from_parameters() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_parameters", false]], "from_parameters() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.from_parameters", false]], "from_parameters() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.from_parameters", false]], "from_parameters() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.from_parameters", false]], "from_scf() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_scf", false]], "from_t_amplitudes() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.from_t_amplitudes", false]], "generate_norb_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec", false]], "generate_norb_nelec_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec_spin", false]], "generate_norb_nocc() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nocc", false]], "generate_norb_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_spin", false]], "givens_decomposition() (in module ffsim.linalg)": [[2, "ffsim.linalg.givens_decomposition", false]], "givensansatzop (class in ffsim)": [[0, "ffsim.GivensAnsatzOp", false]], "givensansatzoperator (class in ffsim)": [[0, "ffsim.GivensAnsatzOperator", false]], "givensansatzoperatorjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOperatorJW", false]], "givensansatzoperatorspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW", false]], "givensansatzopjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOpJW", false]], "givensansatzopspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOpSpinlessJW", false]], "givensrotation (class in ffsim.linalg)": [[2, "ffsim.linalg.GivensRotation", false]], "hamiltonian (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.hamiltonian", false]], "hartree_fock_state() (in module ffsim)": [[0, "ffsim.hartree_fock_state", false]], "hf_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_energy", false]], "hf_mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_mo_coeff", false]], "hf_mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_mo_occ", false]], "hopgateansatzoperator (class in ffsim)": [[0, "ffsim.HopGateAnsatzOperator", false]], "i (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.i", false]], "indices_to_strings() (in module ffsim)": [[0, "ffsim.indices_to_strings", false]], "init_cache() (in module ffsim)": [[0, "ffsim.init_cache", false]], "int (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.INT", false]], "interaction_pairs (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.interaction_pairs", false]], "interaction_pairs (ffsim.givensansatzoperator attribute)": [[0, "ffsim.GivensAnsatzOperator.interaction_pairs", false]], "interaction_pairs (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.interaction_pairs", false]], "interaction_pairs (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.interaction_pairs", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionspinlessjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW.inverse", false]], "inverse() (ffsim.qiskit.numopsumevolutionjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.numopsumevolutionspinlessjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationspinlessjw method)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW.inverse", false]], "is_antihermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_antihermitian", false]], "is_hermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_hermitian", false]], "is_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_orthogonal", false]], "is_real_symmetric() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_real_symmetric", false]], "is_special_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_special_orthogonal", false]], "is_unitary() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_unitary", false]], "j (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.j", false]], "jordan_wigner() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.jordan_wigner", false]], "linear_operator() (in module ffsim)": [[0, "ffsim.linear_operator", false]], "lup() (in module ffsim.linalg)": [[2, "ffsim.linalg.lup", false]], "many_body_order() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.many_body_order", false]], "match_global_phase() (in module ffsim.linalg)": [[2, "ffsim.linalg.match_global_phase", false]], "mergeorbitalrotations (class in ffsim.qiskit)": [[4, "ffsim.qiskit.MergeOrbitalRotations", false]], "minimize_linear_method() (in module ffsim.optimize)": [[3, "ffsim.optimize.minimize_linear_method", false]], "mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_coeff", false]], "mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_occ", false]], "modified_cholesky() (in module ffsim.linalg)": [[2, "ffsim.linalg.modified_cholesky", false]], "module": [[0, "module-ffsim", false], [1, "module-ffsim.contract", false], [2, "module-ffsim.linalg", false], [3, "module-ffsim.optimize", false], [4, "module-ffsim.qiskit", false], [5, "module-ffsim.random", false], [6, "module-ffsim.testing", false]], "mole (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.mole", false]], "moleculardata (class in ffsim)": [[0, "ffsim.MolecularData", false]], "molecularhamiltonian (class in ffsim)": [[0, "ffsim.MolecularHamiltonian", false]], "mp2_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_energy", false]], "mp2_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_t2", false]], "multireference_state() (in module ffsim)": [[0, "ffsim.multireference_state", false]], "multireference_state_prod() (in module ffsim)": [[0, "ffsim.multireference_state_prod", false]], "n_params() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.n_params", false]], "n_params() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.n_params", false]], "n_params() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.n_params", false]], "n_params() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.n_params", false]], "n_params() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.n_params", false]], "n_params() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.n_params", false]], "n_params() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.n_params", false]], "n_reps (ffsim.realucjoperator property)": [[0, "ffsim.RealUCJOperator.n_reps", false]], "n_reps (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.n_reps", false]], "n_reps (ffsim.ucjopspinbalanced property)": [[0, "ffsim.UCJOpSpinBalanced.n_reps", false]], "n_reps (ffsim.ucjopspinless property)": [[0, "ffsim.UCJOpSpinless.n_reps", false]], "n_reps (ffsim.ucjopspinunbalanced property)": [[0, "ffsim.UCJOpSpinUnbalanced.n_reps", false]], "nelec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.nelec", false]], "nelec (ffsim.statevector attribute)": [[0, "ffsim.StateVector.nelec", false]], "norb (ffsim.diagonalcoulombhamiltonian property)": [[0, "ffsim.DiagonalCoulombHamiltonian.norb", false]], "norb (ffsim.doublefactorizedhamiltonian property)": [[0, "ffsim.DoubleFactorizedHamiltonian.norb", false]], "norb (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.norb", false]], "norb (ffsim.givensansatzoperator attribute)": [[0, "ffsim.GivensAnsatzOperator.norb", false]], "norb (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.norb", false]], "norb (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.norb", false]], "norb (ffsim.molecularhamiltonian property)": [[0, "ffsim.MolecularHamiltonian.norb", false]], "norb (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.norb", false]], "norb (ffsim.realucjoperator property)": [[0, "ffsim.RealUCJOperator.norb", false]], "norb (ffsim.singlefactorizedhamiltonian property)": [[0, "ffsim.SingleFactorizedHamiltonian.norb", false]], "norb (ffsim.statevector attribute)": [[0, "ffsim.StateVector.norb", false]], "norb (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.norb", false]], "norb (ffsim.ucjopspinbalanced property)": [[0, "ffsim.UCJOpSpinBalanced.norb", false]], "norb (ffsim.ucjopspinless property)": [[0, "ffsim.UCJOpSpinless.norb", false]], "norb (ffsim.ucjopspinunbalanced property)": [[0, "ffsim.UCJOpSpinUnbalanced.norb", false]], "normal_ordered() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.normal_ordered", false]], "num_op_sum_linop() (in module ffsim.contract)": [[1, "ffsim.contract.num_op_sum_linop", false]], "number_operator() (in module ffsim)": [[0, "ffsim.number_operator", false]], "numnumansatzopspinbalanced (class in ffsim)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced", false]], "numnumansatzopspinbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW", false]], "numopsumevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW", false]], "numopsumevolutionspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW", false]], "one_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.one_body_integrals", false]], "one_body_linop() (in module ffsim.contract)": [[1, "ffsim.contract.one_body_linop", false]], "one_body_squares (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_squares", false]], "one_body_tensor (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_tensor", false]], "one_hot() (in module ffsim)": [[0, "ffsim.one_hot", false]], "one_hot() (in module ffsim.linalg)": [[2, "ffsim.linalg.one_hot", false]], "orb (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.orb", false]], "orbital_rotations (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.orbital_rotations", false]], "orbital_rotations (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.orbital_rotations", false]], "orbital_rotations (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.orbital_rotations", false]], "orbital_symmetries (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.orbital_symmetries", false]], "orbitalrotationjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationJW", false]], "orbitalrotationspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW", false]], "phase_angles (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.phase_angles", false]], "phis (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.phis", false]], "pre_init (in module ffsim.qiskit)": [[4, "ffsim.qiskit.PRE_INIT", false]], "pre_init_passes() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.pre_init_passes", false]], "preparehartreefockjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareHartreeFockJW", false]], "preparehartreefockspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareHartreeFockSpinlessJW", false]], "prepareslaterdeterminantjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantJW", false]], "prepareslaterdeterminantspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW", false]], "productstatesum (class in ffsim)": [[0, "ffsim.ProductStateSum", false]], "qiskit_vec_to_ffsim_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.qiskit_vec_to_ffsim_vec", false]], "random_antihermitian() (in module ffsim.random)": [[5, "ffsim.random.random_antihermitian", false]], "random_double_factorized_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_double_factorized_hamiltonian", false]], "random_fermion_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_fermion_hamiltonian", false]], "random_fermion_operator() (in module ffsim.random)": [[5, "ffsim.random.random_fermion_operator", false]], "random_hermitian() (in module ffsim.random)": [[5, "ffsim.random.random_hermitian", false]], "random_molecular_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_molecular_hamiltonian", false]], "random_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.random_nelec", false]], "random_occupied_orbitals() (in module ffsim.testing)": [[6, "ffsim.testing.random_occupied_orbitals", false]], "random_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_orthogonal", false]], "random_real_symmetric_matrix() (in module ffsim.random)": [[5, "ffsim.random.random_real_symmetric_matrix", false]], "random_special_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_special_orthogonal", false]], "random_state_vector() (in module ffsim.random)": [[5, "ffsim.random.random_state_vector", false]], "random_statevector() (in module ffsim.random)": [[5, "ffsim.random.random_statevector", false]], "random_t2_amplitudes() (in module ffsim.random)": [[5, "ffsim.random.random_t2_amplitudes", false]], "random_two_body_tensor() (in module ffsim.random)": [[5, "ffsim.random.random_two_body_tensor", false]], "random_ucj_op_spin_balanced() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spin_balanced", false]], "random_ucj_op_spin_unbalanced() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spin_unbalanced", false]], "random_ucj_op_spinless() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spinless", false]], "random_ucj_operator() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_operator", false]], "random_unitary() (in module ffsim.random)": [[5, "ffsim.random.random_unitary", false]], "rdm() (in module ffsim)": [[0, "ffsim.rdm", false]], "rdms() (in module ffsim)": [[0, "ffsim.rdms", false]], "realucjoperator (class in ffsim)": [[0, "ffsim.RealUCJOperator", false]], "reduced_matrix() (in module ffsim.linalg)": [[2, "ffsim.linalg.reduced_matrix", false]], "reduced_matrix_product_states() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.reduced_matrix_product_states", false]], "rotated() (ffsim.molecularhamiltonian method)": [[0, "ffsim.MolecularHamiltonian.rotated", false]], "run() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.run", false]], "run() (ffsim.qiskit.ffsimsampler method)": [[4, "ffsim.qiskit.FfsimSampler.run", false]], "run() (ffsim.qiskit.mergeorbitalrotations method)": [[4, "ffsim.qiskit.MergeOrbitalRotations.run", false]], "run_ccsd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_ccsd", false]], "run_cisd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_cisd", false]], "run_fci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_fci", false]], "run_mp2() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_mp2", false]], "run_sci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_sci", false]], "s (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.s", false]], "sample_slater_determinant() (in module ffsim)": [[0, "ffsim.sample_slater_determinant", false]], "sample_state_vector() (in module ffsim)": [[0, "ffsim.sample_state_vector", false]], "scf (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.scf", false]], "sci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.sci_energy", false]], "sci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.sci_vec", false]], "simulate_qdrift_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_qdrift_double_factorized", false]], "simulate_trotter_diag_coulomb_split_op() (in module ffsim)": [[0, "ffsim.simulate_trotter_diag_coulomb_split_op", false]], "simulate_trotter_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_trotter_double_factorized", false]], "simulatetrotterdoublefactorizedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW", false]], "singlefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.SingleFactorizedHamiltonian", false]], "slater_determinant() (in module ffsim)": [[0, "ffsim.slater_determinant", false]], "slater_determinant_rdm() (in module ffsim)": [[0, "ffsim.slater_determinant_rdm", false]], "slater_determinant_rdms() (in module ffsim)": [[0, "ffsim.slater_determinant_rdms", false]], "spin (class in ffsim)": [[0, "ffsim.Spin", false]], "spin (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.spin", false]], "spin (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.spin", false]], "spin_square() (in module ffsim)": [[0, "ffsim.spin_square", false]], "states (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.states", false]], "statevector (class in ffsim)": [[0, "ffsim.StateVector", false]], "string (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.STRING", false]], "strings_to_addresses() (in module ffsim)": [[0, "ffsim.strings_to_addresses", false]], "strings_to_indices() (in module ffsim)": [[0, "ffsim.strings_to_indices", false]], "supportsapplyunitary (class in ffsim)": [[0, "ffsim.SupportsApplyUnitary", false]], "supportsapproximateequality (class in ffsim)": [[0, "ffsim.SupportsApproximateEquality", false]], "supportsdiagonal (class in ffsim)": [[0, "ffsim.SupportsDiagonal", false]], "supportsfermionoperator (class in ffsim)": [[0, "ffsim.SupportsFermionOperator", false]], "supportslinearoperator (class in ffsim)": [[0, "ffsim.SupportsLinearOperator", false]], "supportstrace (class in ffsim)": [[0, "ffsim.SupportsTrace", false]], "symmetry (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.symmetry", false]], "thetas (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.thetas", false]], "thetas (ffsim.givensansatzoperator attribute)": [[0, "ffsim.GivensAnsatzOperator.thetas", false]], "thetas (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.thetas", false]], "thetas (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.thetas", false]], "to_diag_coulomb_mats() (ffsim.numnumansatzopspinbalanced method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.to_diag_coulomb_mats", false]], "to_fcidump() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.to_fcidump", false]], "to_json() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.to_json", false]], "to_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_molecular_hamiltonian", false]], "to_number_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_number_representation", false]], "to_orbital_rotation() (ffsim.givensansatzop method)": [[0, "ffsim.GivensAnsatzOp.to_orbital_rotation", false]], "to_parameters() (ffsim.givensansatzop method)": [[0, "ffsim.GivensAnsatzOp.to_parameters", false]], "to_parameters() (ffsim.givensansatzoperator method)": [[0, "ffsim.GivensAnsatzOperator.to_parameters", false]], "to_parameters() (ffsim.hopgateansatzoperator method)": [[0, "ffsim.HopGateAnsatzOperator.to_parameters", false]], "to_parameters() (ffsim.numnumansatzopspinbalanced method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.to_parameters", false]], "to_parameters() (ffsim.realucjoperator method)": [[0, "ffsim.RealUCJOperator.to_parameters", false]], "to_parameters() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_parameters", false]], "to_parameters() (ffsim.ucjopspinbalanced method)": [[0, "ffsim.UCJOpSpinBalanced.to_parameters", false]], "to_parameters() (ffsim.ucjopspinless method)": [[0, "ffsim.UCJOpSpinless.to_parameters", false]], "to_parameters() (ffsim.ucjopspinunbalanced method)": [[0, "ffsim.UCJOpSpinUnbalanced.to_parameters", false]], "to_t_amplitudes() (ffsim.realucjoperator method)": [[0, "ffsim.RealUCJOperator.to_t_amplitudes", false]], "to_t_amplitudes() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_t_amplitudes", false]], "to_z_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_z_representation", false]], "trace() (in module ffsim)": [[0, "ffsim.trace", false]], "two_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.two_body_integrals", false]], "two_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.two_body_tensor", false]], "ucjoperator (class in ffsim)": [[0, "ffsim.UCJOperator", false]], "ucjoperatorjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOperatorJW", false]], "ucjopspinbalanced (class in ffsim)": [[0, "ffsim.UCJOpSpinBalanced", false]], "ucjopspinbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinBalancedJW", false]], "ucjopspinless (class in ffsim)": [[0, "ffsim.UCJOpSpinless", false]], "ucjopspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinlessJW", false]], "ucjopspinunbalanced (class in ffsim)": [[0, "ffsim.UCJOpSpinUnbalanced", false]], "ucjopspinunbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinUnbalancedJW", false]], "vec (ffsim.statevector attribute)": [[0, "ffsim.StateVector.vec", false]], "z_representation (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.z_representation", false]]}, "objects": {"": [[0, 0, 0, "-", "ffsim"]], "ffsim": [[0, 1, 1, "", "BitstringType"], [0, 1, 1, "", "DiagonalCoulombHamiltonian"], [0, 1, 1, "", "DoubleFactorizedHamiltonian"], [0, 1, 1, "", "FermionAction"], [0, 1, 1, "", "FermionOperator"], [0, 1, 1, "", "GivensAnsatzOp"], [0, 1, 1, "", "GivensAnsatzOperator"], [0, 1, 1, "", "HopGateAnsatzOperator"], [0, 1, 1, "", "MolecularData"], [0, 1, 1, "", "MolecularHamiltonian"], [0, 1, 1, "", "NumNumAnsatzOpSpinBalanced"], [0, 1, 1, "", "ProductStateSum"], [0, 1, 1, "", "RealUCJOperator"], [0, 1, 1, "", "SingleFactorizedHamiltonian"], [0, 1, 1, "", "Spin"], [0, 1, 1, "", "StateVector"], [0, 1, 1, "", "SupportsApplyUnitary"], [0, 1, 1, "", "SupportsApproximateEquality"], [0, 1, 1, "", "SupportsDiagonal"], [0, 1, 1, "", "SupportsFermionOperator"], [0, 1, 1, "", "SupportsLinearOperator"], [0, 1, 1, "", "SupportsTrace"], [0, 1, 1, "", "UCJOpSpinBalanced"], [0, 1, 1, "", "UCJOpSpinUnbalanced"], [0, 1, 1, "", "UCJOpSpinless"], [0, 1, 1, "", "UCJOperator"], [0, 5, 1, "", "addresses_to_strings"], [0, 5, 1, "", "apply_diag_coulomb_evolution"], [0, 5, 1, "", "apply_fsim_gate"], [0, 5, 1, "", "apply_fswap_gate"], [0, 5, 1, "", "apply_givens_rotation"], [0, 5, 1, "", "apply_hop_gate"], [0, 5, 1, "", "apply_num_interaction"], [0, 5, 1, "", "apply_num_num_interaction"], [0, 5, 1, "", "apply_num_op_prod_interaction"], [0, 5, 1, "", "apply_num_op_sum_evolution"], [0, 5, 1, "", "apply_on_site_interaction"], [0, 5, 1, "", "apply_orbital_rotation"], [0, 5, 1, "", "apply_tunneling_interaction"], [0, 5, 1, "", "apply_unitary"], [0, 5, 1, "", "approx_eq"], [1, 0, 0, "-", "contract"], [0, 5, 1, "", "cre"], [0, 5, 1, "", "cre_a"], [0, 5, 1, "", "cre_b"], [0, 5, 1, "", "des"], [0, 5, 1, "", "des_a"], [0, 5, 1, "", "des_b"], [0, 5, 1, "", "diag"], [0, 5, 1, "", "dim"], [0, 5, 1, "", "dims"], [0, 5, 1, "", "expectation_one_body_power"], [0, 5, 1, "", "expectation_one_body_product"], [0, 5, 1, "", "fermi_hubbard_1d"], [0, 5, 1, "", "fermi_hubbard_2d"], [0, 5, 1, "", "fermion_operator"], [0, 5, 1, "", "hartree_fock_state"], [0, 5, 1, "", "indices_to_strings"], [0, 5, 1, "", "init_cache"], [2, 0, 0, "-", "linalg"], [0, 5, 1, "", "linear_operator"], [0, 5, 1, "", "multireference_state"], [0, 5, 1, "", "multireference_state_prod"], [0, 5, 1, "", "number_operator"], [0, 5, 1, "", "one_hot"], [3, 0, 0, "-", "optimize"], [4, 0, 0, "-", "qiskit"], [5, 0, 0, "-", "random"], [0, 5, 1, "", "rdm"], [0, 5, 1, "", "rdms"], [0, 5, 1, "", "sample_slater_determinant"], [0, 5, 1, "", "sample_state_vector"], [0, 5, 1, "", "simulate_qdrift_double_factorized"], [0, 5, 1, "", "simulate_trotter_diag_coulomb_split_op"], [0, 5, 1, "", "simulate_trotter_double_factorized"], [0, 5, 1, "", "slater_determinant"], [0, 5, 1, "", "slater_determinant_rdm"], [0, 5, 1, "", "slater_determinant_rdms"], [0, 5, 1, "", "spin_square"], [0, 5, 1, "", "strings_to_addresses"], [0, 5, 1, "", "strings_to_indices"], [6, 0, 0, "-", "testing"], [0, 5, 1, "", "trace"]], "ffsim.BitstringType": [[0, 2, 1, "", "BIT_ARRAY"], [0, 2, 1, "", "INT"], [0, 2, 1, "", "STRING"]], "ffsim.DiagonalCoulombHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_fermion_operator"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"]], "ffsim.DoubleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_molecular_hamiltonian"], [0, 3, 1, "", "to_number_representation"], [0, 3, 1, "", "to_z_representation"], [0, 2, 1, "", "z_representation"]], "ffsim.FermionAction": [[0, 2, 1, "", "action"], [0, 2, 1, "", "orb"], [0, 2, 1, "", "spin"]], "ffsim.FermionOperator": [[0, 3, 1, "", "conserves_particle_number"], [0, 3, 1, "", "conserves_spin_z"], [0, 3, 1, "", "many_body_order"], [0, 3, 1, "", "normal_ordered"]], "ffsim.GivensAnsatzOp": [[0, 3, 1, "", "from_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 3, 1, "", "n_params"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "phase_angles"], [0, 2, 1, "", "phis"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_orbital_rotation"], [0, 3, 1, "", "to_parameters"]], "ffsim.GivensAnsatzOperator": [[0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_parameters"]], "ffsim.HopGateAnsatzOperator": [[0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_parameters"]], "ffsim.MolecularData": [[0, 2, 1, "", "active_space"], [0, 2, 1, "", "atom"], [0, 2, 1, "", "basis"], [0, 2, 1, "", "ccsd_energy"], [0, 2, 1, "", "ccsd_t1"], [0, 2, 1, "", "ccsd_t2"], [0, 2, 1, "", "cisd_energy"], [0, 2, 1, "", "cisd_vec"], [0, 2, 1, "", "core_energy"], [0, 2, 1, "", "dipole_integrals"], [0, 2, 1, "", "fci_energy"], [0, 2, 1, "", "fci_vec"], [0, 3, 1, "", "from_fcidump"], [0, 3, 1, "", "from_json"], [0, 3, 1, "", "from_mole"], [0, 3, 1, "", "from_scf"], [0, 4, 1, "", "hamiltonian"], [0, 2, 1, "", "hf_energy"], [0, 2, 1, "", "hf_mo_coeff"], [0, 2, 1, "", "hf_mo_occ"], [0, 2, 1, "", "mo_coeff"], [0, 2, 1, "", "mo_occ"], [0, 4, 1, "", "mole"], [0, 2, 1, "", "mp2_energy"], [0, 2, 1, "", "mp2_t2"], [0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "one_body_integrals"], [0, 2, 1, "", "orbital_symmetries"], [0, 3, 1, "", "run_ccsd"], [0, 3, 1, "", "run_cisd"], [0, 3, 1, "", "run_fci"], [0, 3, 1, "", "run_mp2"], [0, 3, 1, "", "run_sci"], [0, 4, 1, "", "scf"], [0, 2, 1, "", "sci_energy"], [0, 2, 1, "", "sci_vec"], [0, 2, 1, "", "spin"], [0, 2, 1, "", "symmetry"], [0, 3, 1, "", "to_fcidump"], [0, 3, 1, "", "to_json"], [0, 2, 1, "", "two_body_integrals"]], "ffsim.MolecularHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "from_fcidump"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "rotated"], [0, 2, 1, "", "two_body_tensor"]], "ffsim.NumNumAnsatzOpSpinBalanced": [[0, 3, 1, "", "from_diag_coulomb_mats"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 3, 1, "", "n_params"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_diag_coulomb_mats"], [0, 3, 1, "", "to_parameters"]], "ffsim.ProductStateSum": [[0, 2, 1, "", "coeffs"], [0, 2, 1, "", "states"]], "ffsim.RealUCJOperator": [[0, 2, 1, "", "diag_coulomb_mats_alpha_alpha"], [0, 2, 1, "", "diag_coulomb_mats_alpha_beta"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"], [0, 3, 1, "", "to_t_amplitudes"]], "ffsim.SingleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "expectation_product_state"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_squares"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "reduced_matrix_product_states"]], "ffsim.Spin": [[0, 2, 1, "", "ALPHA"], [0, 2, 1, "", "ALPHA_AND_BETA"], [0, 2, 1, "", "BETA"]], "ffsim.StateVector": [[0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "vec"]], "ffsim.UCJOpSpinBalanced": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinUnbalanced": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinless": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOperator": [[0, 2, 1, "", "diag_coulomb_mats_alpha_alpha"], [0, 2, 1, "", "diag_coulomb_mats_alpha_beta"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"], [0, 3, 1, "", "to_t_amplitudes"]], "ffsim.contract": [[1, 5, 1, "", "contract_diag_coulomb"], [1, 5, 1, "", "contract_num_op_sum"], [1, 5, 1, "", "contract_one_body"], [1, 5, 1, "", "diag_coulomb_linop"], [1, 5, 1, "", "num_op_sum_linop"], [1, 5, 1, "", "one_body_linop"]], "ffsim.linalg": [[2, 1, 1, "", "GivensRotation"], [2, 5, 1, "", "apply_matrix_to_slices"], [2, 5, 1, "", "double_factorized"], [2, 5, 1, "", "double_factorized_t2"], [2, 5, 1, "", "double_factorized_t2_alpha_beta"], [2, 5, 1, "", "expm_multiply_taylor"], [2, 5, 1, "", "givens_decomposition"], [2, 5, 1, "", "is_antihermitian"], [2, 5, 1, "", "is_hermitian"], [2, 5, 1, "", "is_orthogonal"], [2, 5, 1, "", "is_real_symmetric"], [2, 5, 1, "", "is_special_orthogonal"], [2, 5, 1, "", "is_unitary"], [2, 5, 1, "", "lup"], [2, 5, 1, "", "match_global_phase"], [2, 5, 1, "", "modified_cholesky"], [2, 5, 1, "", "one_hot"], [2, 5, 1, "", "reduced_matrix"]], "ffsim.linalg.GivensRotation": [[2, 2, 1, "", "c"], [2, 2, 1, "", "i"], [2, 2, 1, "", "j"], [2, 2, 1, "", "s"]], "ffsim.optimize": [[3, 5, 1, "", "minimize_linear_method"]], "ffsim.qiskit": [[4, 1, 1, "", "DiagCoulombEvolutionJW"], [4, 1, 1, "", "DiagCoulombEvolutionSpinlessJW"], [4, 1, 1, "", "DropNegligible"], [4, 1, 1, "", "FfsimSampler"], [4, 1, 1, "", "GivensAnsatzOpJW"], [4, 1, 1, "", "GivensAnsatzOpSpinlessJW"], [4, 1, 1, "", "GivensAnsatzOperatorJW"], [4, 1, 1, "", "GivensAnsatzOperatorSpinlessJW"], [4, 1, 1, "", "MergeOrbitalRotations"], [4, 1, 1, "", "NumNumAnsatzOpSpinBalancedJW"], [4, 1, 1, "", "NumOpSumEvolutionJW"], [4, 1, 1, "", "NumOpSumEvolutionSpinlessJW"], [4, 1, 1, "", "OrbitalRotationJW"], [4, 1, 1, "", "OrbitalRotationSpinlessJW"], [4, 6, 1, "", "PRE_INIT"], [4, 1, 1, "", "PrepareHartreeFockJW"], [4, 1, 1, "", "PrepareHartreeFockSpinlessJW"], [4, 1, 1, "", "PrepareSlaterDeterminantJW"], [4, 1, 1, "", "PrepareSlaterDeterminantSpinlessJW"], [4, 1, 1, "", "SimulateTrotterDoubleFactorizedJW"], [4, 1, 1, "", "UCJOpSpinBalancedJW"], [4, 1, 1, "", "UCJOpSpinUnbalancedJW"], [4, 1, 1, "", "UCJOpSpinlessJW"], [4, 1, 1, "", "UCJOperatorJW"], [4, 5, 1, "", "ffsim_vec_to_qiskit_vec"], [4, 5, 1, "", "final_state_vector"], [4, 5, 1, "", "jordan_wigner"], [4, 5, 1, "", "pre_init_passes"], [4, 5, 1, "", "qiskit_vec_to_ffsim_vec"]], "ffsim.qiskit.DiagCoulombEvolutionJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.DropNegligible": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "run"]], "ffsim.qiskit.FfsimSampler": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "run"]], "ffsim.qiskit.GivensAnsatzOpJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.GivensAnsatzOpSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.GivensAnsatzOperatorJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "__init_subclass__"], [4, 3, 1, "", "__new__"]], "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "__init_subclass__"], [4, 3, 1, "", "__new__"]], "ffsim.qiskit.MergeOrbitalRotations": [[4, 3, 1, "", "run"]], "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.NumOpSumEvolutionJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.NumOpSumEvolutionSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.OrbitalRotationJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.OrbitalRotationSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.PrepareHartreeFockJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareHartreeFockSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareSlaterDeterminantJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinBalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinUnbalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOperatorJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "__init_subclass__"], [4, 3, 1, "", "__new__"]], "ffsim.random": [[5, 5, 1, "", "random_antihermitian"], [5, 5, 1, "", "random_double_factorized_hamiltonian"], [5, 5, 1, "", "random_fermion_hamiltonian"], [5, 5, 1, "", "random_fermion_operator"], [5, 5, 1, "", "random_hermitian"], [5, 5, 1, "", "random_molecular_hamiltonian"], [5, 5, 1, "", "random_orthogonal"], [5, 5, 1, "", "random_real_symmetric_matrix"], [5, 5, 1, "", "random_special_orthogonal"], [5, 5, 1, "", "random_state_vector"], [5, 5, 1, "", "random_statevector"], [5, 5, 1, "", "random_t2_amplitudes"], [5, 5, 1, "", "random_two_body_tensor"], [5, 5, 1, "", "random_ucj_op_spin_balanced"], [5, 5, 1, "", "random_ucj_op_spin_unbalanced"], [5, 5, 1, "", "random_ucj_op_spinless"], [5, 5, 1, "", "random_ucj_operator"], [5, 5, 1, "", "random_unitary"]], "ffsim.testing": [[6, 5, 1, "", "assert_allclose_up_to_global_phase"], [6, 5, 1, "", "generate_norb_nelec"], [6, 5, 1, "", "generate_norb_nelec_spin"], [6, 5, 1, "", "generate_norb_nocc"], [6, 5, 1, "", "generate_norb_spin"], [6, 5, 1, "", "random_nelec"], [6, 5, 1, "", "random_occupied_orbitals"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "property", "Python property"], "5": ["py", "function", "Python function"], "6": ["py", "data", "Python data"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:property", "5": "py:function", "6": "py:data"}, "terms": {"": [0, 2, 4, 8, 9, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23], "0": [0, 2, 3, 4, 6, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 21, 23], "00": 18, "000": 20, "0000000": [15, 18], "0000000000011100000000000111": 20, "0000000000011100000000011100": 20, "0000000000011100100000001100": 20, "0000000000110100000000001101": 20, "0000000000110100010000000101": 20, "0000000001011000000000010110": 20, "0000000001011000100000000110": 20, "0000000001110000000000000111": 20, "0000000111100000011111": 20, "0000000111100110000111": 20, "0000010101100001011011": 20, "0000010110100001011011": 20, "0000100101100000111011": 20, "0000100110100000111011": 20, "0000111100001111": 20, "0000111100011011": 20, "0000111100011101": 20, "0000111100101011": 20, "0001": 3, "0001000001010000000000000111": 20, "0001110100001111": 20, "0002174860872736592": 18, "0007328912165354164": 18, "0010000000011000000000010110": 20, "0010011100101101": 20, "0010101100001111": 20, "0010101100101101": 20, "001011": [0, 14], "0010110100100111": 20, "0010110100101011": 20, "001101": [0, 14], "001110": [0, 14], "0026606424118499226": 18, "005e": 15, "008343161337227666": 18, "008343165427075229": 18, "01": [15, 18], "0100000110100100001111": 20, "010011": [0, 14], "0101": 0, "0101000001100000011111": 20, "010101": [0, 14], "010110": [0, 14], "0110": 0, "02": [15, 18], "02122442107773": 18, "02242": 2, "02459434j": 14, "02625": 2, "02998708j": 14, "03": [15, 18], "03101213j": 14, "03525116j": 14, "036685417309836654": 23, "04": [15, 18], "04758323886584889": 18, "05": [0, 2, 3, 4, 18], "05395": 4, "06": 18, "0609050": 5, "0625": [0, 16], "06273307": 14, "06551571": 14, "06677383j": 14, "06844774j": 14, "07": [6, 18], "07358983j": 16, "08": [0, 2, 3, 4], "080e": 15, "08957": 2, "093e": 18, "09723851": 14, "0b001011": 0, "0b010101": 0, "0b010110": 0, "0b100101": 0, "0b100110": 0, "0j": 16, "0x7f0f22c51930": 19, "0x7f0f22ccc190": 19, "0x7f0f22ccd1b0": 19, "0x7f0f22cce8c0": 19, "0x7f0f22ccf490": 19, "0x7f0f22f0c490": 19, "0x7f0f8cc0d990": 19, "0x7f0f8cc0ea70": 19, "1": [0, 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "10": [13, 18, 19, 20, 23], "100": 15, "1000": 3, "1000000101100000111011": 20, "100011": [0, 14], "100101": [0, 14], "100110": [0, 14], "101": 20, "1024": 4, "104": [15, 21], "105e": 18, "107741686812878": 20, "108": [20, 23], "10_000": 20, "11": [0, 13, 19, 20, 23], "1102529j": 14, "11157654": 14, "112": 15, "11769439": 16, "12": [2, 13, 15, 16, 18, 23], "1207": 0, "12204343": 14, "1234": [9, 13, 14, 15, 19, 21], "12345": 20, "125": [0, 16], "127805362711006": 20, "1284": [15, 18], "12j": 16, "13": [0, 13, 18, 23], "13113848": 14, "132e": 15, "133": 20, "13327423j": 14, "13957088j": 14, "14": [13, 20], "15": [13, 15], "150e": 18, "152e": 18, "1561685j": 14, "15624569": 14, "15828306": 14, "15x15": 15, "16": [13, 20], "17": 13, "1711": [2, 4], "17181289596": 21, "17276745j": 14, "17558331": 14, "18": 13, "180": 15, "18007105": 14, "1808": 2, "18j": 16, "19": 0, "196e": 18, "1e": [0, 2, 3, 4, 6, 15, 23], "1j": [0, 9, 16, 23], "2": [0, 1, 2, 4, 5, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "20835741": 14, "20881506": 14, "21": 0, "210": 20, "2104": 2, "2190712273": 9, "21928194": 14, "21984743e": 16, "22392824": 14, "23": 15, "23550198": 14, "23611476": 14, "24": [13, 19], "25": [0, 16], "25j": [0, 16], "26": 23, "26121865": 14, "263e": 18, "287e": 18, "29821173j": 14, "2d": 0, "2j": [0, 2, 16], "2n": 14, "3": [0, 2, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "30052742j": 14, "31980058j": 14, "31g": [20, 21], "32": [13, 19], "329": 18, "33731417j": 14, "339": 18, "3484557048462": 20, "35": [0, 23], "36730125j": 14, "3714141": 14, "378": 18, "38435478j": 14, "39": [13, 14, 15, 16, 18, 19, 20], "39075171": 14, "399e": 18, "3j": 16, "4": [0, 2, 8, 9, 13, 14, 15, 16, 18, 19, 20, 21, 23], "411e": 18, "414e": 15, "431e": 15, "4390672": 14, "45619739165906": 20, "46": 18, "464957764796": 23, "46x46": 18, "47": 20, "478": 15, "48": [13, 20], "49094286j": 14, "4j": 16, "5": [0, 3, 9, 13, 14, 15, 16, 18, 19, 20, 23], "51253171j": 14, "519e": 18, "553e": 18, "55717072551545": 9, "559e": 18, "56": [13, 19, 20], "561e": 18, "562": 18, "5626": 18, "567e": 18, "57": 20, "58888": 22, "5j": [0, 16], "6": [0, 9, 13, 14, 15, 16, 19, 20, 21, 23], "603513968594312e": 18, "603e": 15, "6083": 0, "6332495815006": 15, "64": 14, "641e": 18, "65": 20, "66": 20, "674e": 18, "67794403659724": 15, "6787887956297": 15, "6787887956314": 15, "6838156085223": 15, "684e": 18, "6g": [0, 15, 18, 23], "6j": 16, "7": [0, 9, 13, 14, 15, 16, 18, 19, 23], "70": 20, "705e": 18, "72": 18, "7288249991515": 15, "72x72": 18, "73105542j": 14, "744e": 15, "747e": 15, "748e": 18, "75": [15, 20], "77": 18, "8": [0, 13, 15, 16, 19, 20, 23], "8266321248744": 18, "8266321248745": 18, "835236570774": 20, "838e": 18, "87160024816285": 18, "87362316910543": 18, "87363391825906": 18, "87363426644954": 18, "87363431942123": 18, "87387390831138": 18, "87421536374032": 18, "8742165643863": 18, "9": [13, 14, 16, 19, 23], "9289": 18, "9402435115135183": 23, "949": 18, "958": 15, "9630419334854": 20, "9709515153370365": 18, "9715440087034412": 18, "9715440096318498": 18, "99": 9, "9924": 20, "9985212854198294": 23, "9985212854199046": 23, "9991": 20, "9996731164187965": 23, "A": [0, 1, 2, 3, 4, 5, 6, 8, 12, 13, 14, 16, 22, 23], "AND": 15, "As": [0, 11, 13, 14, 18, 19, 23], "By": 21, "For": [0, 3, 4, 8, 9, 11, 14, 15, 16, 22, 23], "If": [0, 1, 2, 3, 4, 5, 6, 13, 16], "In": [0, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "It": [0, 2, 3, 4, 13, 14, 16, 18, 20, 22], "Its": [3, 4], "NO": [15, 18], "No": 2, "Of": 11, "On": [14, 22], "One": [0, 23], "Such": 16, "That": [0, 3, 12, 16], "The": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "Their": 19, "Then": [0, 13], "There": 13, "These": [0, 11, 16, 19], "To": [0, 8, 9, 11, 14, 18, 23], "With": [11, 14, 23], "_": [0, 1, 2, 4, 8, 11, 12, 15, 23], "_1": 12, "_2": 12, "__init__": 4, "__init_subclass__": 4, "__new__": 4, "_factr": 18, "_i": [0, 4], "_k": [0, 8, 11], "_nestedsequ": 4, "_supportsarrai": 4, "a_": [0, 4, 8, 9, 12, 16], "a_j": 1, "a_p": 0, "a_q": 0, "ab": [0, 23], "abil": 8, "abl": 22, "about": 21, "abov": [13, 16], "absenc": [0, 1, 4], "absolut": [0, 2, 4, 6], "acceler": 22, "accept": [12, 18], "access": [0, 9, 22], "accommod": 4, "accomod": 8, "accur": 8, "achiev": [2, 23], "across": 22, "act": [0, 2, 4, 9, 13, 15, 16], "action": [0, 1, 12, 16, 22, 23], "activ": [0, 15, 18, 20, 23], "active_spac": [0, 15, 18, 20, 21, 23], "actual": [6, 11], "ad": [0, 13, 18], "add": [13, 18], "addit": [0, 8, 16, 23], "addition": 2, "address": [0, 13], "addresses_to_str": [0, 7, 14], "adjac": 13, "advantag": 18, "after": [3, 18], "al": 2, "algebra": [2, 9, 16], "algorithm": [0, 2, 3, 18, 21], "alia": [0, 2], "align": [0, 11, 12], "all": [0, 1, 2, 3, 4, 6, 11, 13, 16, 20, 22], "alloc": 0, "allow": [0, 2, 11, 13, 18, 22, 23], "along": 0, "alpha": [0, 1, 2, 4, 6, 9, 11, 13, 14, 15, 16, 19, 20], "alpha_alpha_indic": 0, "alpha_and_beta": 0, "alpha_beta_indic": 0, "alpha_i": 0, "alpha_j": 0, "alreadi": [0, 4, 12], "also": [0, 2, 3, 9, 12, 14, 16, 18, 23], "altern": [0, 8], "alwai": [0, 2, 5, 12, 14, 23], "amen": 13, "amplitud": [0, 2, 5, 18, 20], "an": [0, 1, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 23], "angl": 0, "ani": [0, 3, 4, 11, 12, 19, 20], "annihil": [0, 16], "anoth": [2, 6], "ansatz": [0, 3, 4, 5, 10, 13, 17, 19, 20, 21], "ansatz_oper": 0, "ansatz_st": 18, "anti": [2, 5], "anticommut": 12, "ao": 0, "ap": 2, "api": [14, 21], "appear": [0, 2, 13, 16, 20], "append": [0, 6, 13, 18, 19, 20], "appli": [0, 1, 2, 3, 4, 9, 11, 12, 13, 14, 18, 19, 20, 21, 23], "applic": 12, "apply_": 14, "apply_diag_coulomb_evolut": [0, 7, 8, 23], "apply_fsim_g": [0, 7], "apply_fswap_g": [0, 7], "apply_givens_rot": [0, 7], "apply_hop_g": [0, 7], "apply_matrix_to_slic": [2, 7], "apply_num_interact": [0, 7], "apply_num_num_interact": [0, 7], "apply_num_op_prod_interact": [0, 7], "apply_num_op_sum_evolut": [0, 7, 12, 23], "apply_on_site_interact": [0, 7, 14], "apply_orbital_rot": [0, 7, 12, 14, 21], "apply_quad_ham_evolut": 12, "apply_tunneling_interact": [0, 7, 14], "apply_unitari": [0, 7, 18], "appropri": [0, 11], "approx": 8, "approx_eq": [0, 7], "approxim": [0, 2, 3, 8, 18, 23], "apt": 22, "ar": [0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 13, 14, 16, 19, 20, 22], "arbitrari": [4, 20], "arch": 22, "arg": [0, 4], "argument": [0, 2, 3, 8, 9, 12, 14, 23], "aris": 8, "arithmet": 16, "around": 23, "arrai": [0, 1, 2, 4, 6, 9, 11, 14, 16], "arxiv": [0, 2, 4, 5], "ascend": 20, "assembl": 2, "assert": 14, "assert_allclose_up_to_global_phas": [6, 7], "assertionerror": 6, "associ": [0, 3, 14, 16, 18], "assum": [0, 4, 14], "asterisk": 0, "asymmetr": 8, "atol": [0, 2, 4, 6], "atom": [0, 15, 18, 20, 21, 23], "attempt": 2, "attribut": [0, 3, 9, 15, 18], "author": 21, "auto": 0, "avail": [9, 19, 22], "avoid": [0, 9, 16], "awar": 16, "ax": [0, 2], "axi": [0, 2], "b": [0, 2, 3, 6, 12, 15, 18], "back": 4, "backend": [13, 19], "backflow": 3, "background": 23, "balanc": [0, 4, 5, 18, 20], "barrier": 20, "base": [0, 2, 4], "basepass": 4, "basesamplerv2": 4, "basi": [0, 2, 4, 12, 15, 18, 20, 21, 23], "basic": [9, 13], "basis_g": [13, 19], "bear": 23, "becaus": [0, 2, 8, 9, 13, 15, 16, 18], "been": [0, 8], "befor": [0, 13, 16, 22, 23], "begin": [0, 2, 11, 12, 14, 20, 23], "behavior": [2, 4, 5, 19], "being": [2, 16, 18], "below": [0, 18, 23], "benchmark": 0, "beta": [0, 1, 2, 4, 6, 9, 11, 13, 14, 15, 16, 19, 20], "beta_i": 0, "beta_j": 0, "better": 8, "between": [0, 1, 2, 3, 11, 13], "bfg": [0, 2, 3, 15, 18], "bibtex": 21, "bit": [0, 13, 14], "bit_arrai": 0, "bitstr": [0, 14, 20], "bitstring_typ": [0, 14], "bitstringtyp": [0, 7, 14], "bla": 22, "bloc": 20, "block": 2, "block_diag": [0, 2], "bmod": 0, "bodi": [0, 1, 2, 5, 8, 9, 18, 23], "bond": 15, "bond_angle_deg": 15, "bond_dist": 18, "bool": [0, 1, 2, 3, 4, 5, 6], "both": [0, 1, 2, 4, 11, 15], "bound": [0, 2], "boundari": 0, "box": 13, "bq": 2, "bracket": 0, "braket": 0, "branch": 21, "brickwork": 15, "browser": 22, "buffer": 4, "build": [13, 17, 18, 20, 21, 22], "built": [19, 20, 23], "byte": [0, 4], "bz2": 0, "c": [2, 18], "c2v": 15, "cach": 0, "calcul": [0, 14, 18], "call": [0, 3, 4, 8, 9, 12, 14, 16, 18, 20, 23], "callabl": [3, 18], "callback": [0, 2, 3, 18], "can": [0, 1, 2, 4, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22, 23], "cannot": 20, "canon": 0, "casci": [15, 18], "case": [0, 6, 13, 15], "categori": 21, "caus": 0, "cc": [18, 20], "ccsd": [0, 18, 20], "ccsd_energi": 0, "ccsd_t1": 0, "ccsd_t2": 0, "cd": 22, "cdot": 2, "cell": [9, 13, 14, 18, 19, 20, 23], "certain": [2, 13], "challeng": 11, "character": 0, "check": [2, 4, 6], "chemcor": 23, "chemic": 0, "chemical_potenti": 0, "chemistri": 21, "choic": [0, 6, 13, 14], "choleski": [0, 2], "choos": [2, 14], "chosen": 0, "ci": [15, 18], "circuit": [0, 4, 8, 13, 14, 17, 21], "circul": 0, "cisd": 0, "cisd_energi": 0, "cisd_vec": 0, "class": [0, 2, 4, 5, 9, 11, 15, 17, 18, 21, 23], "clement": 2, "clone": 22, "close": [11, 18], "cluster": [0, 4, 5, 10, 17, 21], "co": [0, 15], "code": [4, 9, 13, 14, 16, 18, 19, 20, 23], "coeff": [0, 1, 4, 13, 19], "coeffici": [0, 1, 2, 4, 12, 16], "collect": [0, 2, 4, 18], "column": [0, 2, 12, 14], "com": [21, 22], "comb": 4, "combin": [0, 1, 4, 12, 13, 16], "command": 22, "commonli": [8, 20], "commun": [21, 22], "commut": [0, 8], "compact": [8, 23], "compar": [0, 6, 23], "compil": 22, "complet": 0, "complex": [0, 1, 2, 4, 5, 9], "compon": [0, 16, 21], "compos": [4, 22], "compress": [0, 2], "compris": [0, 16], "comput": [0, 2, 4, 9, 12, 18, 21, 23], "concaten": [0, 14], "concret": 9, "condit": 0, "configur": [0, 4, 13, 14, 22], "conflict": 6, "conj": [2, 12, 20], "conjug": 2, "connect": [0, 11, 13], "consecut": [4, 20], "conserv": [0, 5, 16, 21], "conserves_particle_numb": [0, 16], "conserves_spin_z": [0, 16], "consid": [11, 12, 13], "consist": [0, 9, 13], "constant": [0, 5, 8, 9, 11, 13, 19], "constrain": 2, "constraint": [11, 18], "construct": [0, 1, 3, 4, 13, 14, 15, 16, 18, 19, 20, 23], "contain": [0, 2, 3, 13, 16, 20, 21, 22], "contract": [2, 7, 21], "contract_diag_coulomb": [1, 7], "contract_num_op_sum": [1, 7], "contract_one_bodi": [1, 7], "contrast": 14, "control": [3, 13], "conveni": 14, "convent": 0, "converg": [3, 15, 18, 20, 23], "convers": [11, 18], "convert": [0, 1, 4, 14, 16, 18, 20, 21, 23], "coordin": 0, "coov": 20, "copi": [0, 16], "core": 0, "core_energi": 0, "correl": 3, "correspond": [0, 2, 3, 4, 8, 12, 13, 14, 18], "cost": 0, "coulomb": [0, 1, 2, 4, 8, 11, 23], "count": [0, 13, 20], "count_op": [13, 19], "cours": 11, "cp": [13, 19], "cphaseg": 13, "cre": [0, 7], "cre_a": [0, 7, 16], "cre_b": [0, 7, 16], "creat": [0, 4, 13, 14, 16, 19, 20, 21, 23], "creation": [0, 4, 12, 16], "criteria": 16, "current": [0, 2, 18], "d": [2, 22], "d2h": 18, "dag": 4, "dagcircuit": 4, "dagger": [0, 1, 2, 8, 11, 12, 16], "dagger_": [0, 4, 8, 9, 12], "dagger_i": 1, "dagger_p": 0, "dagger_q": 0, "data": [0, 5, 13, 15, 16, 18, 20, 21, 23], "daunt": 8, "de": [0, 7], "decompos": [2, 4, 8, 13, 19], "decomposit": [0, 2, 4, 8, 10, 19, 21, 23], "decreas": [0, 18], "def": [2, 12, 15, 18, 23], "default": [0, 2, 3, 4, 5, 8, 9, 23], "default_rng": [0, 4, 5, 6, 9, 13, 15, 19, 20], "default_shot": [4, 20], "defaultdict": 18, "defin": [0, 2, 13, 15, 18, 20, 23], "definit": [0, 2, 3, 14], "demonstr": [14, 18, 20], "denot": [0, 1, 2, 4, 12], "dens": 15, "densiti": 0, "depend": [0, 2, 3, 22, 23], "deprec": [0, 4, 5], "depth": 11, "deriv": 8, "des_a": [0, 7, 16], "des_b": [0, 7, 16], "descend": [0, 16], "describ": [0, 1, 2, 8, 11, 12, 13, 16, 23], "descript": [0, 4], "design": [0, 2, 12], "desir": [0, 2, 5, 6], "destroi": [0, 16], "detail": [13, 19], "determin": [0, 2, 4, 14], "determinant": 0, "dev": 22, "devel": 22, "develop": [4, 21], "devic": [13, 19], "df_hamiltonian": [13, 19, 23], "df_hamiltonian_alt": 23, "diag": [0, 7], "diag_coulomb_indic": [0, 2], "diag_coulomb_jw": 13, "diag_coulomb_linop": [1, 7], "diag_coulomb_mat": [0, 2, 13, 19, 20, 23], "diag_coulomb_mats_alpha_alpha": 0, "diag_coulomb_mats_alpha_beta": 0, "diagcoulombevolutionjw": [4, 7, 13, 19, 20], "diagcoulombevolutionspinlessjw": [4, 7], "diagon": [0, 1, 2, 4, 8, 11, 23], "diagonal_coulomb_mat": 2, "diagonalcoulombhamiltonian": [0, 7], "dict": [0, 2, 3, 15, 18], "dictionari": [0, 16], "did": 0, "differ": [0, 1, 2, 3, 9, 11, 13, 18, 22, 23], "dim": [0, 5, 7, 14, 16], "dim_a": [0, 14], "dim_b": [0, 14], "dimens": [0, 2, 5, 14], "dimension": [0, 2, 4, 14], "dipol": 0, "dipole_integr": 0, "direct": [0, 23], "directli": [0, 13, 18, 22, 23], "directori": 22, "discuss": [8, 12, 13], "disjoint": 2, "disk": 0, "displai": [13, 16, 20], "distinguish": 14, "distribut": 5, "divid": 8, "divis": [0, 16], "dnf": 22, "do": [8, 13, 16], "doc": [15, 18, 21], "docker": 21, "dockerfil": 22, "docstr": 0, "document": [0, 2], "doe": [0, 4, 16, 20], "don": 11, "dooh": [20, 21, 23], "dot": 0, "doubl": [0, 2, 4, 5, 10, 21, 24], "double_factor": [0, 2, 7], "double_factorized_t2": [2, 7], "double_factorized_t2_alpha_beta": [2, 7], "doublefactorizedhamiltonian": [0, 4, 5, 7, 23], "down": 14, "draw": [13, 19], "drop": [4, 15, 18], "dropneglig": [4, 7], "dtype": [0, 2, 4, 5, 9, 15, 18], "due": 20, "dump": [15, 18], "duplic": 0, "dure": 4, "e": [0, 2, 4, 8, 9, 11, 15, 16, 18, 20], "e_corr": [18, 20], "each": [0, 2, 3, 4, 8, 11, 14, 16, 18, 22, 23], "edg": 0, "effect": [0, 4, 13], "effici": [8, 13, 16], "eig": [9, 16], "eigendecomposit": 12, "eigenvalu": [0, 2, 3, 9], "eigenvector": [0, 2], "eigh": [12, 23], "eigsh": 9, "einsum": 23, "either": [0, 1, 2, 4, 6, 11], "electon": 4, "electron": [0, 1, 4, 5, 9, 13, 14, 15, 19, 20, 23], "element": [0, 1, 2, 4, 20, 23], "ell": 2, "els": [0, 5, 14], "elsewher": 0, "enabl": 2, "encount": 20, "end": [0, 2, 11, 12, 20, 23], "energi": [0, 3, 9, 12, 18, 20, 21, 23], "energy_nuc": [15, 18], "enforc": 0, "enough": 4, "ensur": 9, "entangl": [0, 17, 21], "entir": [2, 8], "entri": [0, 2, 4, 11, 14, 23], "enum": 0, "enumer": [0, 18], "environ": 22, "epsilon": 3, "epsmch": 18, "equal": [0, 2, 6, 13], "equal_nan": 6, "equilibrium": 15, "equival": [0, 4], "err_msg": 6, "error": [0, 2, 4, 6, 23], "especi": 16, "estim": 9, "et": 2, "etc": 0, "ethen": 18, "evalu": [3, 15], "even": 13, "everi": 12, "everywher": 14, "evolut": [0, 4, 9, 23], "evolv": [0, 23], "evolved_vec": 9, "evolved_vec_2": 9, "exact": [2, 8, 9, 23], "exact_st": 23, "exampl": [0, 4, 9, 11, 13, 14, 15, 16, 18, 19, 22], "exce": [2, 15, 23], "except": [0, 2, 3], "excit": 13, "exist": [2, 4], "exp": [0, 2, 4, 6], "expand": 0, "expanded_diag_coulomb_mat": 2, "expanded_orbital_rot": 2, "expans": [2, 3], "expect": [0, 3], "expectation_one_body_pow": [0, 7], "expectation_one_body_product": [0, 7], "expectation_product_st": 0, "expens": [0, 2], "explain": [9, 11, 13, 14, 18, 23], "explan": [0, 19, 21], "explicit": 0, "explicitli": 0, "exploit": 21, "expm": 2, "expm_multipli": [9, 23], "expm_multiply_taylor": [2, 7], "exponenti": [8, 9, 23], "expos": [4, 13], "express": [11, 14, 23], "extend": 4, "extra": 8, "extract": 20, "f": [3, 14, 15, 18, 20, 23], "facilit": 11, "fact": 15, "factor": [0, 2, 4, 5, 10, 21, 24], "failur": 6, "fake_provid": [13, 19], "fals": [0, 1, 2, 4, 5, 15, 16, 18], "far": 16, "fast": 0, "faster": [18, 21], "fault": 11, "fci": [0, 14, 15, 18], "fci_energi": 0, "fci_vec": 0, "fcidump": 0, "fcivec": 0, "fedora": 22, "feenberg": 3, "fermi": 0, "fermi_hubbard_1d": [0, 7], "fermi_hubbard_2d": [0, 7], "fermion": [0, 4, 5, 6, 8, 10, 11, 12, 16, 19, 20, 21], "fermion_oper": [0, 7], "fermionact": [0, 7], "fermionoper": [0, 4, 5, 7, 17, 21], "few": [14, 22], "fewer": [13, 19, 23], "ffsim": [7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 23], "ffsim_vec_to_qiskit_vec": [4, 7], "ffsimsampl": [4, 7], "fidel": 23, "field": [0, 2], "fifth": 13, "file": [0, 22], "filter": 0, "final": [0, 3, 4, 5, 13, 19, 23], "final_orbital_rot": 0, "final_st": [18, 23], "final_state_vector": [4, 7], "finish": 23, "finit": 3, "first": [0, 2, 4, 8, 13, 14, 18, 20, 23], "fix": 14, "flag": 0, "float": [0, 2, 3, 4, 5, 6, 9, 12, 23], "float64": [9, 15, 18], "fock": [0, 4, 11, 14, 18, 21, 23], "focu": 9, "follow": [0, 2, 3, 4, 9, 11, 12, 13, 14, 16, 18, 19, 20, 21, 22, 23], "foot": 0, "forg": [0, 17, 21], "form": [0, 1, 2, 4, 8, 9, 11, 12, 16, 20, 23], "format": [0, 4], "formula": [0, 23], "fourth": [8, 13], "frac": [0, 2], "frac12": [0, 8, 9, 11], "frac18": 0, "framework": 22, "from": [0, 2, 4, 5, 6, 8, 11, 12, 13, 14, 15, 16, 18, 19, 21, 23], "from_diag_coulomb_mat": 0, "from_fcidump": 0, "from_fermion_oper": 0, "from_json": 0, "from_mol": 0, "from_molecular_hamiltonian": [0, 23], "from_orbital_rot": 0, "from_paramet": [0, 13, 18], "from_scf": [0, 15, 18, 20, 21, 23], "from_t_amplitud": [0, 18, 20], "frozen": [18, 20], "fsim": 0, "fswap": 0, "ftol": [3, 18], "full": [0, 2, 13, 14, 15], "fulli": 9, "fun": [3, 15, 18], "function": [0, 1, 2, 3, 5, 8, 9, 12, 14, 15, 16, 18, 19, 23], "fundament": 12, "further": [13, 14], "furthermor": [0, 2], "g": [0, 4, 15], "g_": 2, "g_1": 2, "g_i": 3, "g_k": 2, "g_l": 2, "gate": [0, 4, 10, 11, 15, 20, 21], "gener": [0, 3, 4, 5, 6, 8, 13, 14, 15, 19, 20, 21], "generate_norb_nelec": [6, 7], "generate_norb_nelec_spin": [6, 7], "generate_norb_nocc": [6, 7], "generate_norb_spin": [6, 7], "generate_preset_pass_manag": [13, 19], "genericbackendv2": [13, 19], "get": [0, 14, 15, 18, 20, 21, 23], "get_count": 20, "get_hcor": [15, 18], "get_ovlp": [15, 18], "git": 22, "github": [21, 22], "give": [0, 2, 8, 14, 19], "given": [0, 2, 4, 6, 8, 12], "givens_ansatz_op": 4, "givens_ansatz_oper": 4, "givens_decomposit": [2, 7], "givensansatzop": [0, 4, 7], "givensansatzoper": [0, 4, 7], "givensansatzoperatorjw": [4, 7], "givensansatzoperatorspinlessjw": [4, 7], "givensansatzopjw": [4, 7], "givensansatzopspinlessjw": [4, 7], "givensrot": [2, 7], "global": [4, 6], "go": [0, 13, 16], "good": 16, "gradient": [2, 3, 18], "greater": 3, "ground": [9, 18], "gt": [15, 18, 19], "gto": [15, 18, 20, 21, 23], "gtol": 3, "guarante": [4, 19], "guess": [3, 18], "guid": [11, 15, 18, 19, 20, 21], "gzip": 0, "h": [0, 8, 9, 15, 18, 20, 23], "h1_x": 15, "h2_x": 15, "h2_y": 15, "h_": [0, 2, 8, 9], "h_0": [8, 23], "h_k": [8, 23], "ha": [0, 1, 2, 4, 8, 11, 12, 13, 14, 18], "haar": 5, "ham": 14, "hamiltonian": [0, 3, 4, 5, 10, 15, 18, 20, 21, 24], "hand": 14, "handl": [20, 23], "happen": 13, "hardwar": 13, "hartre": [0, 4, 11, 14, 18, 21, 23], "hartree_fock": 0, "hartree_fock_jw": 13, "hartree_fock_st": [0, 7, 9, 14, 18, 21, 23], "hasattr": 18, "hash": 16, "have": [0, 2, 8, 9, 11, 12, 13, 14, 16, 22], "height": 5, "helper": 16, "here": [0, 2, 8, 12, 13, 15, 23], "hermitian": [0, 2, 5, 12], "hess_inv": [15, 18], "hf": [15, 18], "hf_energi": 0, "hf_mo_coeff": 0, "hf_mo_occ": 0, "high": 13, "higher": [0, 8, 23], "ho": 20, "hold": [0, 3], "home": [15, 18, 22], "hop": [0, 15], "hopgateansatzoper": [0, 7, 15], "hot": [0, 2], "how": [0, 8, 9, 11, 12, 13, 14, 21, 23], "howev": [8, 13, 21], "http": [0, 21, 22], "hubbard": 0, "hydroxyl": 20, "hyperparamet": [3, 18], "i": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "idea": 11, "ident": 0, "ignor": [0, 2, 8], "ij": [0, 1, 2, 4, 8, 11, 12], "ijab": 2, "ik": 12, "imag": 22, "implement": [0, 1, 3, 4, 8, 9, 11, 12, 13, 15, 18, 20, 21, 22, 24], "import": [0, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "impos": [11, 18], "improv": [3, 23], "includ": [0, 2, 4, 5, 8, 9, 12, 13, 14, 15, 18, 19, 21, 22], "incorpor": 0, "increas": [0, 14, 23], "increment": 3, "incur": 3, "independ": [0, 1, 4, 15], "index": [0, 2, 11, 14, 16], "indic": [0, 1, 2, 4, 11, 14, 16], "indices_to_str": [0, 7], "individu": [8, 14, 16], "info": 18, "inform": [0, 9, 16, 18, 21, 23], "init_cach": [0, 7], "initi": [0, 3, 4, 5, 6, 9, 11, 13, 18, 19, 20, 23], "initial_st": 23, "initiali": 15, "input": [0, 1, 3, 4, 5, 6, 18, 20], "insert": 13, "instanc": [5, 9, 23], "instead": [0, 2, 4, 5, 18, 23], "instruct": [21, 22], "instructionset": 19, "int": [0, 1, 2, 3, 4, 5, 6, 12, 15, 23], "int32": 0, "integ": [0, 2, 4, 6, 14], "integr": [0, 4], "interact": [0, 1, 2, 4, 11, 13, 18, 20], "interaction_pair": [0, 13, 15, 18, 20], "interfac": [18, 22], "interferomet": 2, "intermedi": 18, "intermediate_result": [3, 18], "intern": 16, "interpret": [0, 11], "introduc": [11, 12, 23], "invers": 4, "involv": [0, 12, 13], "ip": 2, "ipykernel_4324": 9, "is_antihermitian": [2, 7], "is_hermitian": [2, 7], "is_orthogon": [2, 7], "is_real_symmetr": [2, 7], "is_special_orthogon": [2, 7], "is_unitari": [2, 7], "isclos": 0, "isn": 4, "issu": [9, 13], "item": 20, "iter": [0, 3, 4, 6, 18], "itertool": 2, "its": [0, 2, 4, 9, 13, 14, 15, 16, 23], "itself": [0, 14, 16], "j": [0, 1, 2, 4, 8, 11, 12, 14, 15, 16], "jac": [3, 15, 18], "jastrow": [0, 3, 4, 5, 10, 17, 21], "ji": [0, 4, 11, 12], "jk": 12, "job": [4, 20], "jordan": [0, 4], "jordan_wign": [4, 7], "jq": 2, "json": [0, 15, 18], "jupyt": 22, "just": [0, 14, 18, 22, 23], "jwt": 4, "k": [0, 2, 3, 8, 9, 11, 16, 20, 23], "kappa": 0, "kappa_": 0, "keep": [0, 2], "kei": 20, "kij": 23, "know": 15, "known": [0, 8], "kpi": 23, "kqi": 23, "krj": 23, "kron": 0, "ksj": 23, "kwarg": [0, 4], "l": [0, 2, 3, 8, 11, 15, 18, 23], "label": [4, 14], "ladder": [8, 11], "lambda": [0, 4, 20], "lambda_i": [0, 1, 4, 12], "lambda_k": 12, "langl": 0, "larger": [0, 2, 3, 16], "last": [0, 2, 3, 4], "later": [19, 23], "lattic": [0, 11, 13, 18, 20], "layer": [0, 2, 13, 20], "lbfgsinvhessproduct": [15, 18], "ldot": [0, 2, 8, 11, 23], "lead": 0, "least": 2, "left": [0, 4, 12, 14, 16], "len": [15, 18, 23], "length": [0, 4, 5, 14, 15], "leq": [0, 2], "less": [2, 11], "let": [0, 13, 14, 16, 18, 19, 20, 23], "level": 23, "lexicograph": [0, 16], "lib": [15, 18], "libopenbla": 22, "librari": [0, 21], "like": [4, 11, 18, 22], "limit": [0, 2, 11, 13, 15, 18], "linalg": [0, 7, 9, 12, 16, 18, 21, 23], "lindep": 3, "line": [0, 11, 13, 18], "linear": [0, 1, 2, 3, 4, 9, 12, 13, 16], "linear_oper": [0, 7, 9, 16, 18, 21, 23], "linearli": 8, "linearoper": [0, 1, 3, 16, 18, 21, 23], "linop": [9, 16, 21, 23], "linux": 22, "list": [0, 2, 4, 6, 11, 14, 15, 18, 20, 23], "ll": [9, 12, 13, 15, 18, 20, 23], "lm": 16, "load": 0, "local": [10, 17, 21], "localhost": 22, "log": [0, 4], "logarithm": 11, "logic": [12, 15], "longer": 11, "longest": 0, "lookup": 0, "losslessli": 0, "low": [0, 8, 23], "lower": [0, 2], "lowest": [0, 13, 14], "lt": [15, 18, 19], "lu": 2, "lucj": [10, 13, 17, 21], "lup": [2, 7], "lvert": [0, 4, 11, 14], "lzma": 0, "m": [0, 1, 2, 12], "m_": [0, 1, 2], "maco": 22, "made": 23, "magnitud": 0, "mai": [0, 2, 3, 4, 11, 22, 23], "main": [18, 22], "maintain": 8, "make": [11, 13], "manag": [4, 13, 19, 22], "mani": [0, 9, 12, 14, 21], "manual": 23, "many_body_ord": 0, "map": [0, 4, 12, 13, 16], "mapsto": [0, 4, 12], "mat": [0, 1, 2, 4, 12, 14], "mat_aa": 2, "mat_ab": 2, "mat_alpha_beta": 1, "mat_bb": 2, "match": [0, 2], "match_global_phas": [2, 7], "math": [5, 15], "mathbf": [0, 8, 11, 12], "mathcal": [0, 1, 4, 8, 11, 12], "matric": [0, 1, 2, 4, 11, 12, 23], "matrix": [0, 1, 2, 3, 4, 5, 8, 9, 11, 12, 14, 16], "max": [3, 23], "max_error": 23, "max_term_length": 5, "max_vec": [0, 2, 23], "maxfun": 15, "maximum": [0, 2, 3, 5, 23], "maxit": [3, 18], "mcscf": [15, 18], "mea": 20, "meant": [4, 19], "measur": [5, 8, 20], "measure_al": 20, "mention": 8, "merg": [4, 19], "mergeorbitalrot": [4, 7, 13], "messag": [6, 15, 18], "method": [0, 2, 3, 4, 11, 15, 16, 20, 21], "mid": 20, "might": 2, "mind": 23, "minim": [0, 2, 3, 13, 15, 18], "minimize_linear_method": [3, 7, 18], "minimizz": 15, "minimum": 4, "mk": 2, "mkap": 2, "mkbq": 2, "mkip": 2, "mkjq": 2, "mkpq": 2, "mo_coeff": 0, "mo_occ": 0, "mode": 12, "model": 0, "modifi": [0, 2], "modified_choleski": [2, 7], "modul": [0, 14, 15, 19, 20], "mol": [15, 18, 20, 21, 23], "mol_data": [15, 18, 20, 21, 23], "mol_hamiltonian": [9, 15, 18, 20, 23], "mole": [0, 15, 18, 20, 21, 23], "molecul": [0, 18, 21, 23], "molecular": [0, 5, 9, 10, 14, 15, 18, 20, 21, 23], "moleculardata": [0, 7, 15, 18, 20, 21, 23], "molecularhamiltonian": [0, 5, 7, 9, 23], "more": [0, 2, 3, 4, 8, 9, 11, 13, 14, 19, 23], "most": [0, 2, 16, 20], "motiv": 13, "mp2": 0, "mp2_energi": 0, "mp2_t2": 0, "mpl": [13, 19], "msg": [15, 18], "mu": 0, "much": [0, 2, 8, 13, 21], "multipl": [0, 9, 16, 23], "multipli": [0, 16], "multiport": 2, "multirefer": 0, "multireference_st": [0, 7], "multireference_state_prod": [0, 7, 15], "must": [0, 2, 3, 4, 16, 20], "n": [0, 2, 3, 8, 9, 11, 12, 14, 20, 21, 23], "n2": [20, 21, 23], "n_": [0, 1, 4, 8, 11, 12, 14], "n_alpha": [4, 6, 20], "n_beta": [4, 6, 20], "n_frozen": [20, 23], "n_i": 4, "n_j": 4, "n_layer": 15, "n_p": 0, "n_param": [0, 13], "n_qubit": 4, "n_rep": [0, 5, 13, 18, 19, 20], "n_sampl": 0, "n_step": [0, 4, 13, 19, 23], "n_term": 5, "n_vec": 2, "n_x": 0, "n_y": 0, "name": [0, 9, 13, 14, 19, 22], "namedtupl": [0, 2], "nan": 6, "nao_nr": [15, 18, 20, 21, 23], "nativ": 21, "navig": 22, "ndarrai": [0, 1, 2, 3, 4, 5, 6, 12, 18, 23], "nearest": 0, "nearest_neighbor_interact": 0, "need": [0, 4, 9, 11, 13, 20, 22, 23], "neg": [0, 4], "neglig": 4, "neighbor": [0, 13], "nelec": [0, 1, 4, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "nelectron": 18, "neq": 0, "nest": 2, "network": 11, "new": [0, 4, 12, 16], "newli": 0, "next": [13, 15, 23], "nfev": [3, 15, 18], "nit": [15, 18], "nitrogen": [20, 23], "njev": [15, 18], "nlinop": [3, 18], "nn": 0, "nocc": [0, 5, 6], "nocc_a": 2, "nocc_b": 2, "noisi": 11, "non": [4, 11], "none": [0, 1, 2, 3, 4, 5, 6], "nonzero": [0, 2, 11], "norb": [0, 1, 2, 4, 5, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "norb_i": 0, "norb_rang": 6, "norb_x": 0, "norm": [0, 18], "normal": [0, 15, 16], "normal_ord": [0, 16], "note": [0, 2, 3, 13, 14, 16, 19, 21], "notebook": 22, "noth": 4, "notic": 18, "notimplementederror": 4, "now": [9, 13, 15, 18, 20, 23], "np": [0, 2, 4, 5, 6, 9, 12, 13, 15, 18, 19, 20, 21, 23], "num_num_ansatz_op": 4, "num_op_sum_linop": [1, 7], "number": [0, 1, 2, 3, 4, 5, 6, 8, 9, 12, 14, 15, 16, 18, 21, 23], "number_oper": [0, 7], "numer": [0, 2, 4, 16], "numnumansatzopspinbalanc": [0, 4, 7], "numnumansatzopspinbalancedjw": [4, 7], "numopsumevolutionjw": [4, 7, 13, 19], "numopsumevolutionspinlessjw": [4, 7], "numpi": [0, 1, 2, 4, 6, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 23], "o": [0, 15, 20], "o_1": 0, "o_2": 0, "o_k": 0, "obj": 0, "object": [0, 2, 3, 4, 9, 16, 18, 20], "obtain": [0, 8, 9, 12, 13, 18, 23], "occ_a": 6, "occ_b": 6, "occup": [0, 6, 8, 12, 14], "occupi": [0, 4, 5, 6, 13, 14], "occupied_orbit": [0, 4, 13, 19, 20], "often": [8, 11, 18], "onc": [12, 13, 22], "one": [0, 1, 2, 4, 5, 8, 9, 13, 14, 18, 20, 22, 23], "one_body_basis_chang": 23, "one_body_energi": 23, "one_body_integr": 0, "one_body_linop": [1, 7], "one_body_squar": 0, "one_body_tensor": [0, 9, 23], "one_hot": [0, 2, 7], "one_rdm": 0, "ones": 9, "onli": [0, 2, 4, 8, 11, 12, 13, 20, 22], "onsit": 0, "onto": [13, 16], "op": [0, 4, 16], "op1": [0, 16], "op2": [0, 16], "op3": 16, "op4": 16, "opaqu": 13, "open": [0, 11], "openbla": 22, "oper": [0, 1, 2, 3, 4, 5, 8, 11, 12, 16, 18, 22, 23], "oppos": 13, "opposit": [18, 20], "optim": [0, 2, 4, 7, 11, 13, 19, 21], "optimization_level": [13, 19], "optimize_kwarg": 3, "optimize_regular": 3, "optimize_vari": 3, "optimizeresult": [3, 18], "option": [0, 1, 2, 3, 4, 9, 15, 18, 22], "orb": [0, 16], "orbit": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 14, 15, 16, 18, 20, 21, 23], "orbital_rot": [0, 1, 2, 4, 12, 13, 14, 19, 20, 21, 23], "orbital_rotation_a": 2, "orbital_rotation_b": 2, "orbital_symmetri": 0, "orbitalrotationjw": [4, 7, 13, 19, 20], "orbitalrotationspinlessjw": [4, 7], "order": [0, 1, 2, 4, 8, 9, 13, 14, 16, 19, 20, 23], "ordereddict": [13, 19], "org": 0, "origin": [0, 2, 11, 13, 23], "orthogon": [2, 5], "other": [0, 4, 11, 14, 18, 19, 20], "otherwis": 0, "our": [15, 18, 20, 23], "out": [2, 23], "output": [0, 3, 4, 13, 18, 20], "over": 0, "overrid": [0, 2], "overridden": 4, "overwritten": [0, 15, 18], "own": 4, "p": [0, 2, 8, 9, 11, 13, 18, 19, 20], "packag": [15, 18, 22], "pacman": 22, "pad": 0, "page": [8, 9, 11, 12, 13, 14], "pair": [0, 1, 2, 4, 6, 11, 13, 14], "pairs_aa": [13, 18, 20], "pairs_ab": [13, 18, 20], "pairs_bb": 20, "paper": 11, "parallel": [2, 11, 13], "param": 0, "paramet": [0, 1, 2, 3, 4, 5, 6, 11, 15, 18], "parameter_valu": 4, "params_to_vec": [3, 18], "pars": [15, 18], "part": [0, 5, 8, 12, 14, 15], "particl": [0, 5, 6, 12, 16, 21], "pass": [0, 1, 2, 4, 9, 12, 13, 14, 15, 16, 18, 19], "pass_manag": [13, 19], "passmanag": [4, 13], "path": 0, "pathlik": 0, "pattern": [13, 15], "pauli": 0, "per": 23, "perform": [0, 2, 3, 8, 9, 12, 13, 20, 23], "period": 0, "permut": 2, "persist": 22, "ph": 5, "phase": [0, 2, 4, 6, 13], "phase_angl": 0, "phaseg": 13, "phi": [0, 2, 6], "phi_0": 11, "pi": [0, 15], "piec": [9, 16], "pip": 21, "pipelin": 13, "pivot": 2, "pk": 2, "place": [0, 2, 11, 13, 16, 22], "plain": 14, "pmatrix": [0, 2], "point": 0, "polar": 0, "posit": [2, 3, 14], "possibl": [0, 2, 6, 20, 21], "possibli": [0, 18], "potenti": 0, "power": 0, "pq": [0, 2, 8, 9], "pqr": [0, 2, 8, 9, 23], "practic": 8, "pre": [11, 19], "pre_init": [4, 7, 13, 19], "pre_init_pass": [4, 7, 19], "precis": 6, "prepar": [0, 4, 20], "preparehartreefockjw": [4, 7, 13, 19, 20], "preparehartreefockspinlessjw": [4, 7, 20], "prepareslaterdeterminantjw": [4, 7, 13, 19, 20], "prepareslaterdeterminantspinlessjw": [4, 7, 20], "present": 3, "preserv": [16, 20], "preset_passmanag": [13, 19], "previou": [18, 20], "previous": [8, 13, 14, 18], "primit": [4, 17, 21], "primitivejob": 4, "primitiveresult": 4, "print": [0, 6, 13, 14, 15, 16, 18, 20, 21, 23], "probabl": 0, "problem": 3, "process": 0, "processor": 11, "prod": 15, "prod_": [0, 4, 11], "prod_k": 8, "prod_state_sum": 0, "produc": [0, 13], "product": [0, 2, 8, 14, 15, 16], "productstatesum": [0, 7], "programmat": 16, "properti": [0, 2, 12], "proport": [0, 8], "protocol": 0, "provid": [9, 13, 19, 22], "pseudorandom": [0, 4, 5, 6], "psi": [0, 11], "pub": [4, 20], "pub_result": 20, "put": 15, "py": [9, 15, 18], "pypi": 22, "pyscf": [0, 4, 14, 15, 18, 20, 21, 23], "python3": [15, 18], "q": [0, 8, 9, 13, 19], "qdrift": 0, "qi": 0, "qiskit": [7, 13, 17, 21, 22], "qiskit_vec_to_ffsim_vec": [4, 7], "qk": 2, "quadrat": [8, 10, 21, 23], "qualnam": 0, "quantifi": 2, "quantiti": 0, "quantum": [0, 4, 8, 11, 13, 14, 17, 20, 21], "quantumcircuit": [4, 13, 19, 20], "quantumregist": [13, 19, 20], "qubit": [0, 4, 10, 11, 15, 19, 20, 21], "r": [0, 2, 8, 9], "radic": 20, "radius_1": 15, "radius_2": 15, "rais": [0, 2, 4, 6], "random": [0, 4, 6, 7, 9, 13, 14, 15, 16, 19, 20, 21], "random_antihermitian": [5, 7], "random_double_factorized_hamiltonian": [5, 7, 13, 19], "random_fermion_hamiltonian": [5, 7], "random_fermion_oper": [5, 7], "random_hermitian": [5, 7], "random_molecular_hamiltonian": [5, 7], "random_nelec": [6, 7], "random_occupied_orbit": [6, 7], "random_orthogon": [5, 7], "random_real_symmetric_matrix": [5, 7, 9, 13, 19, 20], "random_special_orthogon": [5, 7], "random_state_vector": [5, 7, 16], "random_statevector": [5, 7], "random_t2_amplitud": [5, 7], "random_two_body_tensor": [5, 7, 9], "random_ucj_op_spin_balanc": [5, 7, 13, 19], "random_ucj_op_spin_unbalanc": [5, 7, 19], "random_ucj_op_spinless": [5, 7], "random_ucj_oper": [5, 7], "random_unitari": [5, 7, 13, 14, 19, 20, 21], "rang": [0, 2, 6, 13, 14, 15, 18, 20, 21, 23], "rangl": [0, 4, 11, 14], "rank": [0, 2, 5, 8, 13], "rather": [0, 12, 14], "rccsd": 20, "rdm": [0, 7], "rdm1": 0, "rdm2": 0, "rdm3": 0, "rdm4": 0, "reach": 18, "read": 0, "real": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 18, 21], "realucjoper": [0, 7], "reason": [4, 12], "recal": 13, "recommend": [4, 13, 16, 19, 21], "reconstruct": [0, 2, 23], "reconstruct_t2_alpha_beta": 2, "recover": 0, "reduc": [0, 2, 13], "reduced_matrix": [2, 7], "reduced_matrix_product_st": 0, "reduct": 18, "redund": 11, "refer": [0, 2, 3, 4, 5, 6, 11, 12, 14, 18, 21], "reference_occup": [0, 15], "reference_occupations_spati": 15, "reference_st": 18, "regress": 0, "regular": [3, 18], "rel": [0, 2, 4, 6, 18], "rel_reduction_of_f_": 18, "relat": 12, "releas": 21, "reorder": [0, 8], "rep": 13, "repeat": 15, "repeatedli": 12, "repetit": [0, 5, 11, 13, 18], "repositori": 22, "repr": 16, "repres": [0, 2, 3, 4, 6, 9, 11, 14, 16, 18, 19], "represent": [0, 1, 2, 4, 5, 10, 14, 16, 21, 23], "reproduc": 23, "requir": [0, 9, 11, 13, 14, 22], "reshap": 14, "respect": [0, 2, 3, 23], "rest": [0, 13], "restrict": [0, 13, 18], "result": [0, 1, 2, 3, 4, 5, 8, 9, 11, 13, 15, 18, 19, 20, 23], "retain": [0, 13], "retriev": 20, "return": [0, 1, 2, 3, 4, 5, 6, 12, 15, 16, 18, 23], "return_lower_rank": 0, "revers": 20, "rewrit": 0, "rewritten": 12, "rhf": [0, 15, 18, 20, 21, 23], "right": [0, 4, 12, 14, 16], "ring": 0, "rise": [2, 8], "rng": [9, 13, 15, 19, 20], "rohf": 20, "root": 0, "rotat": [0, 1, 2, 4, 5, 8, 10, 11, 14, 21, 23], "rotated_vec": 14, "routin": [2, 9, 16], "row": [0, 2, 14], "rtol": [0, 2, 4, 6], "rtype": [0, 2, 4], "run": [0, 4, 13, 15, 18, 19, 20, 21, 22, 23], "run_ccsd": 0, "run_cisd": 0, "run_fci": [0, 15, 18], "run_mp2": 0, "run_sci": 0, "rung": 11, "runner": [15, 18], "rust": 22, "rvert": 0, "s_": [0, 14], "s_a": 0, "s_b": 0, "sa": 9, "same": [0, 9, 11, 12, 13, 14, 15, 18, 20], "sampl": [0, 4, 5, 6, 9], "sample_slater_determin": [0, 7], "sample_state_vector": [0, 7], "sampler": [0, 4, 17, 21], "samplerpubresult": 4, "sandwich": 13, "satisfi": [0, 12, 16, 20, 22], "save": [0, 18, 22], "scalar": [0, 16], "scale": [8, 13, 15, 19], "scf": [0, 15, 18, 20, 21, 23], "scf_func": 0, "scheme": 8, "sci": 0, "sci_energi": 0, "sci_vec": 0, "scipi": [0, 2, 3, 15, 16, 18, 21, 23], "search": 14, "second": [0, 2, 4, 8], "section": [8, 19], "sector": [0, 1, 2, 4, 15], "see": [0, 2, 4, 11, 13, 14, 19, 22, 23], "seed": [0, 4, 5, 6, 9, 13, 14, 19, 20, 21], "seen": 20, "select": 3, "sens": [13, 23], "separ": [0, 11, 14], "sequenc": [0, 2, 4, 13], "seri": 2, "serial": 0, "serializ": [15, 18], "set": [0, 1, 2, 4, 5, 8, 11, 12, 13, 19, 23], "setup": 11, "sever": [9, 13], "shape": [0, 2, 5, 11, 23], "share": 11, "shell": [11, 18], "shot": [0, 4, 20], "should": [0, 1, 2, 4, 5, 6, 9, 12, 22], "show": [13, 15, 16, 18, 19, 20], "shown": 16, "side": 0, "sigma": [0, 1, 4, 8, 9, 11, 12], "sign": 0, "signatur": 3, "signific": 23, "significantli": 13, "similar": 18, "simpl": [20, 22], "simpler": 0, "simpli": [4, 13, 14], "simplist": 23, "simul": [0, 8, 11, 12, 14, 17, 21, 24], "simulate_qdrift_double_factor": [0, 7], "simulate_trotter_diag_coulomb_split_op": [0, 7], "simulate_trotter_double_factor": [0, 7, 8, 23], "simulate_trotter_step_double_factor": 23, "simulatetrotterdoublefactorizedjw": [4, 7, 13, 19], "sin": [0, 15], "sinc": [0, 2, 11, 12, 15, 18], "singl": [0, 1, 4, 6, 8, 13, 23], "singlefactorizedhamiltonian": [0, 7], "singular": [0, 2], "site": [0, 15, 18], "size": [0, 3, 15], "slater": [0, 4], "slater_determin": [0, 7], "slater_determinant_rdm": [0, 7], "slice": 2, "small": 2, "smaller": [0, 2, 8, 16, 23], "so": [0, 2, 6, 8, 11, 12, 13, 15, 16, 22, 23], "softwar": [0, 21], "solv": 3, "some": [0, 2, 6, 9, 13, 14, 16, 18, 20], "sometim": [0, 14], "sort": 20, "sourc": [0, 1, 2, 3, 4, 5, 6, 21], "space": [0, 9, 14, 15, 18, 20, 23], "span": [0, 2], "spars": [9, 16, 23], "sparsepauliop": 4, "sparsiti": 11, "spatial": [0, 1, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 23], "speci": [4, 6], "special": [2, 5, 11, 13, 21], "specif": 14, "specifi": [0, 1, 2, 3, 4, 5, 6, 9, 11, 13, 15, 23], "spectral": 0, "spin": [0, 1, 2, 4, 5, 6, 7, 12, 13, 14, 15, 16, 18, 20, 21], "spin_squar": [0, 7], "spin_sum": 0, "spinless": [0, 4, 5, 6], "split": [0, 23], "squar": [0, 2, 11, 13, 18, 20], "stack": 0, "stage": [4, 13, 19], "standard": 18, "standard_norm": [9, 13, 19], "star": 2, "start": 0, "state": [0, 1, 3, 4, 5, 9, 10, 11, 12, 13, 18, 20, 21, 23], "statevector": [0, 4, 7], "static": [0, 4], "statist": 20, "statu": [15, 18], "step": [0, 4, 8, 12, 15, 19, 23], "step_tim": 23, "still": [0, 8], "sto": [0, 15, 18, 23], "stop": [3, 15, 18], "store": [0, 2, 4, 6, 9, 11, 13, 18, 19, 23], "store_cisd_vec": 0, "store_fci_vec": 0, "store_sci_vec": 0, "store_t1": 0, "store_t2": 0, "str": [0, 2, 4, 6], "straightforward": 2, "strategi": 0, "strength": 0, "strictli": 3, "string": [0, 14, 16], "strings_a": 0, "strings_b": 0, "strings_to_address": [0, 7], "strings_to_indic": [0, 7], "structur": [0, 8], "sub": 0, "subclass": 4, "subdirectori": 22, "submit": 20, "subroutin": 12, "subspac": [0, 2, 16], "substitut": 0, "subsystem": [14, 22], "subtract": [0, 16], "success": [15, 18], "sudo": 22, "suffix": 15, "suggest": 19, "sum": [0, 4, 8, 23], "sum_": [0, 1, 2, 4, 8, 9, 11, 12, 23], "sum_j": 12, "sum_k": [8, 12], "sum_p": 0, "sum_t": 0, "summat": 0, "support": [0, 2, 9, 14, 16, 20, 22], "supportsapplyunitari": [0, 7], "supportsapproximateequ": [0, 7], "supportsdiagon": [0, 7], "supportsfermionoper": [0, 7], "supportslinearoper": [0, 7], "supportstrac": [0, 7], "suzuki": [0, 23], "swap": [0, 11, 13], "symmetr": [0, 2, 4, 5, 8, 11], "symmetri": [0, 12, 15, 18, 20, 21, 23], "system": [0, 4, 6, 12, 14, 22], "t": [0, 2, 4, 8, 11, 12, 20, 21], "t1": 0, "t1a": 0, "t1b": 0, "t2": [0, 2, 5, 18, 20], "t2_amplitud": 2, "t2aa": 0, "t2ab": 0, "t2bb": 0, "t_": 2, "tabl": [0, 16], "take": [0, 3, 18, 19], "taken": 11, "target": [2, 13], "target_orb": 0, "tau": [0, 1, 4, 8, 9, 11], "taylor": 2, "tensor": [0, 1, 2, 5, 8, 9, 18, 23], "term": [0, 2, 5, 8, 11, 16, 23], "test": [7, 21, 23], "text": [0, 8, 9], "th": [2, 12], "than": [0, 4, 12, 13, 14, 18, 21], "thei": [0, 9, 11, 12, 16], "them": [11, 13, 14], "therefor": [0, 2, 11], "theta": [0, 15], "thi": [0, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23], "think": 2, "third": [0, 2], "those": [3, 18], "though": 13, "three": [0, 1, 4, 9, 16], "threshold": [0, 2, 3], "thu": 8, "time": [0, 2, 3, 4, 9, 13, 14, 19, 20, 23], "titl": 21, "tmp": [9, 15, 18], "tmp_ubiqe0": 18, "tmpb0u0jmsu": 15, "to_diag_coulomb_mat": 0, "to_fcidump": 0, "to_json": 0, "to_molecular_hamiltonian": 0, "to_number_represent": 0, "to_orbital_rot": 0, "to_paramet": [0, 18], "to_t_amplitud": 0, "to_z_represent": 0, "tol": [0, 2, 23], "toler": [0, 2, 4, 6, 11, 23], "too": 2, "top": 20, "topologi": [11, 13, 18], "toru": 0, "total": [0, 4, 8, 15, 18, 23], "tox": [15, 18], "trace": [0, 7, 9, 23], "tracea": [9, 23], "trajectori": 0, "transform": [0, 1, 4], "transformationpass": 4, "transpil": [4, 13, 17, 21], "transpiled_opt": 13, "treat": 0, "triangl": 11, "trianglular": [0, 2], "triangular": [0, 2, 4], "triplet": 6, "trotter": [0, 4, 21, 24], "true": [0, 2, 3, 4, 6, 16, 18, 20], "truncat": 8, "try": 23, "tunnel": 0, "tupl": [0, 1, 2, 4, 6, 12, 15, 16, 23], "tutori": [21, 23], "twice": [0, 15, 19], "two": [0, 2, 5, 8, 9, 11, 13, 14, 15, 18, 22, 23], "two_body_integr": 0, "two_body_tensor": [0, 2, 9, 23], "type": [0, 1, 2, 3, 4, 5, 6, 20, 22], "typeerror": 0, "typic": 0, "u": [0, 1, 2, 4, 8, 11, 12], "u_": 4, "u_k": 0, "ubuntu": 22, "uccsd": 20, "ucj": [0, 4, 5], "ucj_balanced_jw": 13, "ucj_op": [4, 13, 19, 20], "ucj_oper": 4, "ucjoper": [0, 4, 5, 7], "ucjoperatorjw": [4, 7], "ucjopspinbalanc": [0, 4, 5, 7, 11, 13, 18, 20], "ucjopspinbalancedjw": [4, 7, 13, 19, 20], "ucjopspinless": [0, 4, 5, 7], "ucjopspinlessjw": [4, 7], "ucjopspinunbalanc": [0, 4, 5, 7, 11, 20], "ucjopspinunbalancedjw": [4, 7, 13, 19, 20], "uhf": 20, "unbalanc": [0, 4, 5, 20], "uncorrel": 0, "under": [0, 4], "underli": 4, "unifi": 20, "uniform": [0, 5], "unimpl": 4, "union": [2, 4], "unit": 2, "unitari": [0, 1, 2, 4, 5, 8, 10, 12, 14, 17, 21], "univers": 2, "unlik": 0, "unord": 0, "untouch": 0, "up": [0, 2, 6, 8, 14, 22], "updat": [0, 8], "upon": 16, "upper": [0, 2, 4, 11], "url": 21, "us": [0, 1, 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 21, 23], "usag": [0, 2, 16, 19], "user": 22, "userwarn": [9, 15, 18], "usual": 0, "util": [2, 5, 6, 8], "v": [0, 20], "v_": 0, "v_i": 2, "v_j": 2, "vacuum": 4, "valid": [0, 4, 5, 6], "valu": [0, 1, 2, 3, 4, 6, 9, 11, 18, 19, 23], "valueerror": [0, 2, 4], "vari": [0, 4], "variabl": [14, 23], "variant": [11, 13, 18], "variat": [0, 3, 11, 18], "variation": 18, "varphi": 0, "vdot": [18, 21, 23], "ve": 23, "vec": [0, 1, 2, 4, 9, 12, 14, 16, 21, 23], "vec_a": 0, "vec_b": 0, "vector": [0, 1, 2, 3, 4, 5, 9, 10, 11, 12, 15, 16, 18, 21], "verbos": 6, "verifi": 2, "version": 4, "vertic": 0, "via": [0, 23], "view": [0, 16], "volum": 22, "w": 0, "w_k": 0, "wa": [0, 3, 4, 11], "wai": 11, "want": 13, "warn": [9, 15, 18, 20], "water": 15, "wavefunct": [3, 18], "we": [0, 2, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "web": 22, "weight": 14, "well": [3, 14, 21, 22, 23], "when": [0, 3, 4, 9, 11, 13, 14, 16, 19, 21], "whenev": 0, "where": [0, 1, 2, 3, 4, 8, 11, 12, 14, 22, 23], "whether": [0, 1, 2, 3, 4, 5, 16], "which": [0, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 22, 23], "while": [8, 11], "whose": [0, 2, 14], "width": 5, "wigner": [0, 4], "william": 2, "window": [21, 22], "wise": 2, "with_final_orbital_rot": [0, 5], "with_phase_angl": 0, "with_phi": 0, "within": [0, 2, 13, 16, 18, 21], "without": [11, 13, 18], "won": 21, "word": [0, 11, 20], "work": [9, 13, 15, 18, 19, 21, 22], "workflow": 20, "would": [13, 14], "wrapper": 23, "write": 23, "written": 8, "wrote": 23, "wsl": 22, "x": [0, 3, 4, 13, 15, 18, 19, 20], "x0": [3, 15, 18], "xx_plus_yi": [13, 19], "xxplusyyg": [13, 19], "y": 0, "yaml": 22, "yet": [9, 18], "yield": [0, 2, 4, 8, 11, 15, 23], "you": [0, 1, 2, 4, 9, 14, 18, 21, 22, 23], "your": [19, 22], "z": [0, 1, 2, 4, 5, 12, 16, 21], "z_represent": [0, 1, 4, 5], "zero": [0, 2, 4, 9, 19], "zip": [0, 15, 18, 23], "\u03c8": 18}, "titles": ["ffsim", "ffsim.contract", "ffsim.linalg", "ffsim.optimize", "ffsim.qiskit", "ffsim.random", "ffsim.testing", "API reference", "Double-factorized representation of the molecular Hamiltonian", "Hamiltonians", "Explanations", "The local unitary cluster Jastrow (LUCJ) ansatz", "Orbital rotations and quadratic Hamiltonians", "Qubit gate decompositions of fermionic gates", "State vectors and gates", "How to simulate entanglement forging", "How to use the FermionOperator class", "How-to guides", "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz", "How to build and transpile Qiskit quantum circuits", "How to use ffsim\u2019s Qiskit Sampler primitive", "ffsim", "Installation", "Implementing Trotter simulation of the double-factorized Hamiltonian", "Tutorials"], "titleterms": {"": 20, "The": 11, "action": 9, "an": 20, "ansatz": [11, 15, 18], "api": 7, "applic": 8, "background": 8, "balanc": [11, 19], "brief": 8, "build": [15, 19, 23], "can": 20, "choos": 15, "circuit": [19, 20], "cite": 21, "class": 16, "close": 20, "cluster": [11, 13, 18, 19], "code": 21, "comput": 15, "content": 21, "contract": 1, "coulomb": [13, 19], "criteria": 20, "data": 9, "decomposit": 13, "determin": [13, 19], "diagon": [13, 19], "docker": 22, "doubl": [8, 13, 19, 23], "energi": 15, "entangl": 15, "evolut": [8, 12, 13, 19], "exampl": [20, 21], "explan": 10, "factor": [8, 13, 19, 23], "fermion": [13, 14], "fermionoper": 16, "ffsim": [0, 1, 2, 3, 4, 5, 6, 20, 21], "ffsimsampl": 20, "fock": [13, 19], "forg": 15, "formula": 8, "from": [20, 22], "gate": [13, 14, 19], "gener": [11, 18], "guid": 17, "hamiltonian": [8, 9, 12, 13, 19, 23], "hartre": [13, 19], "how": [15, 16, 17, 18, 19, 20], "implement": 23, "initi": 15, "instal": [21, 22], "jastrow": [11, 13, 18, 19], "linalg": 2, "linear": 18, "linearoper": 9, "local": [11, 13, 18], "lucj": [11, 18, 20], "merg": 13, "method": 18, "molecul": [15, 20], "molecular": 8, "more": 20, "number": [13, 19], "occup": 15, "open": 20, "oper": [9, 13, 15, 19], "optim": [3, 15, 18], "orbit": [12, 13, 19], "overview": 19, "pip": 22, "prepar": [13, 19], "primit": 20, "qiskit": [4, 19, 20], "quadrat": 12, "quantum": 19, "qubit": 13, "random": 5, "refer": [7, 15], "represent": [8, 9], "rotat": [12, 13, 19], "sampl": 20, "sampler": 20, "scipi": 9, "shell": 20, "simul": [13, 15, 18, 19, 23], "slater": [13, 19], "sourc": 22, "spin": [11, 19], "spinless": 14, "state": [14, 19], "sum": [13, 19], "suzuki": 8, "test": 6, "time": [8, 12], "transform": 19, "transpil": 19, "treat": 14, "trotter": [8, 13, 19, 23], "tutori": 24, "ucj": [11, 13, 18, 19], "unbalanc": [11, 19], "unitari": [11, 13, 18, 19], "us": [16, 20, 22], "vector": 14, "via": [8, 9], "within": 22}}) \ No newline at end of file +Search.setIndex({"alltitles": {"API reference": [[7, null]], "Application to the double-factorized Hamiltonian": [[8, "Application-to-the-double-factorized-Hamiltonian"]], "Application to time evolution via Trotter-Suzuki formulas": [[8, "Application-to-time-evolution-via-Trotter-Suzuki-formulas"]], "Brief background on Trotter-Suzuki formulas": [[8, "Brief-background-on-Trotter-Suzuki-formulas"]], "Build a molecule": [[15, "Build-a-molecule"]], "Build the Hamiltonian": [[23, "Build-the-Hamiltonian"]], "Choose reference occupations": [[15, "Choose-reference-occupations"]], "Circuit transpilation": [[19, "Circuit-transpilation"]], "Citing ffsim": [[21, "citing-ffsim"]], "Code example": [[21, "code-example"]], "Compute energy": [[15, "Compute-energy"]], "Contents": [[21, "contents"]], "Criteria for circuits that FfsimSampler can sample": [[20, "Criteria-for-circuits-that-FfsimSampler-can-sample"]], "Data representation": [[9, "Data-representation"]], "Diagonal Coulomb evolution": [[13, "Diagonal-Coulomb-evolution"], [19, "Diagonal-Coulomb-evolution"]], "Double-factorized representation": [[8, "Double-factorized-representation"]], "Double-factorized representation of the molecular Hamiltonian": [[8, null]], "Example of using FfsimSampler": [[20, "Example-of-using-FfsimSampler"]], "Explanations": [[10, null]], "Gates": [[14, "Gates"]], "General UCJ ansatz": [[18, "General-UCJ-ansatz"]], "Hamiltonians": [[9, null]], "Hartree-Fock and Slater determinant preparation": [[13, "Hartree-Fock-and-Slater-determinant-preparation"]], "How to build and transpile Qiskit quantum circuits": [[19, null]], "How to simulate entanglement forging": [[15, null]], "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz": [[18, null]], "How to use ffsim\u2019s Qiskit Sampler primitive": [[20, null]], "How to use the FermionOperator class": [[16, null]], "How-to guides": [[17, null]], "Implement Trotter simulation": [[23, "Implement-Trotter-simulation"]], "Implementing Trotter simulation of the double-factorized Hamiltonian": [[23, null]], "Initialize ansatz operator": [[15, "Initialize-ansatz-operator"]], "Install from source": [[22, "install-from-source"]], "Installation": [[21, "installation"], [22, null]], "LUCJ ansatz": [[18, "LUCJ-ansatz"]], "Locality in the UCJ operator": [[13, "Locality-in-the-UCJ-operator"]], "Merging orbital rotations": [[13, "Merging-orbital-rotations"]], "More examples": [[20, "More-examples"]], "Number operator sum evolution": [[13, "Number-operator-sum-evolution"], [19, "Number-operator-sum-evolution"]], "Operator action via SciPy LinearOperators": [[9, "Operator-action-via-SciPy-LinearOperators"]], "Optimize energy": [[15, "Optimize-energy"]], "Optimize with the linear method": [[18, "Optimize-with-the-linear-method"]], "Orbital rotation": [[13, "Orbital-rotation"], [19, "Orbital-rotation"]], "Orbital rotations": [[12, "Orbital-rotations"]], "Orbital rotations and quadratic Hamiltonians": [[12, null]], "Overview of gates": [[19, "Overview-of-gates"]], "Pip install": [[22, "pip-install"]], "Prepare Hartree-Fock state": [[19, "Prepare-Hartree-Fock-state"]], "Prepare Slater determinant": [[19, "Prepare-Slater-determinant"]], "Qubit gate decompositions of fermionic gates": [[13, null]], "Sampling from an LUCJ circuit for a closed-shell molecule": [[20, "Sampling-from-an-LUCJ-circuit-for-a-closed-shell-molecule"]], "Sampling from an LUCJ circuit for an open-shell molecule": [[20, "Sampling-from-an-LUCJ-circuit-for-an-open-shell-molecule"]], "Spin-balanced and spin-unbalanced ansatzes": [[11, "Spin-balanced-and-spin-unbalanced-ansatzes"]], "Spin-balanced unitary cluster Jastrow (UCJ) operator": [[19, "Spin-balanced-unitary-cluster-Jastrow-(UCJ)-operator"]], "Spin-unbalanced unitary cluster Jastrow (UCJ) operator": [[19, "Spin-unbalanced-unitary-cluster-Jastrow-(UCJ)-operator"]], "State preparation gates": [[19, "State-preparation-gates"]], "State vectors": [[14, "State-vectors"]], "State vectors and gates": [[14, null]], "The general unitary cluster Jastrow (UCJ) ansatz": [[11, "The-general-unitary-cluster-Jastrow-(UCJ)-ansatz"]], "The local UCJ (LUCJ) ansatz": [[11, "The-local-UCJ-(LUCJ)-ansatz"]], "The local unitary cluster Jastrow (LUCJ) ansatz": [[11, null]], "Time evolution by a quadratic Hamiltonian": [[12, "Time-evolution-by-a-quadratic-Hamiltonian"]], "Treating spinless fermions": [[14, "Treating-spinless-fermions"]], "Trotter simulation of double-factorized Hamiltonian": [[13, "Trotter-simulation-of-double-factorized-Hamiltonian"], [19, "Trotter-simulation-of-double-factorized-Hamiltonian"]], "Tutorials": [[24, null]], "Unitary cluster Jastrow (UCJ) operator": [[13, "Unitary-cluster-Jastrow-(UCJ)-operator"]], "Unitary transformation gates": [[19, "Unitary-transformation-gates"]], "Use within Docker": [[22, "use-within-docker"]], "ffsim": [[0, null], [21, null]], "ffsim.contract": [[1, null]], "ffsim.linalg": [[2, null]], "ffsim.optimize": [[3, null]], "ffsim.qiskit": [[4, null]], "ffsim.random": [[5, null]], "ffsim.testing": [[6, null]]}, "docnames": ["api/ffsim", "api/ffsim.contract", "api/ffsim.linalg", "api/ffsim.optimize", "api/ffsim.qiskit", "api/ffsim.random", "api/ffsim.testing", "api/index", "explanations/double-factorized", "explanations/hamiltonians", "explanations/index", "explanations/lucj", "explanations/orbital-rotation", "explanations/qiskit-gate-decompositions", "explanations/state-vectors-and-gates", "how-to-guides/entanglement-forging", "how-to-guides/fermion-operator", "how-to-guides/index", "how-to-guides/lucj", "how-to-guides/qiskit-circuits", "how-to-guides/qiskit-sampler", "index", "install", "tutorials/double-factorized-trotter", "tutorials/index"], "envversion": {"nbsphinx": 4, "sphinx": 63, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["api/ffsim.rst", "api/ffsim.contract.rst", "api/ffsim.linalg.rst", "api/ffsim.optimize.rst", "api/ffsim.qiskit.rst", "api/ffsim.random.rst", "api/ffsim.testing.rst", "api/index.md", "explanations/double-factorized.ipynb", "explanations/hamiltonians.ipynb", "explanations/index.md", "explanations/lucj.ipynb", "explanations/orbital-rotation.ipynb", "explanations/qiskit-gate-decompositions.ipynb", "explanations/state-vectors-and-gates.ipynb", "how-to-guides/entanglement-forging.ipynb", "how-to-guides/fermion-operator.ipynb", "how-to-guides/index.md", "how-to-guides/lucj.ipynb", "how-to-guides/qiskit-circuits.ipynb", "how-to-guides/qiskit-sampler.ipynb", "index.md", "install.md", "tutorials/double-factorized-trotter.ipynb", "tutorials/index.md"], "indexentries": {"__init__() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.__init__", false]], "__init__() (ffsim.qiskit.diagcoulombevolutionspinlessjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.__init__", false]], "__init__() (ffsim.qiskit.ffsimsampler method)": [[4, "ffsim.qiskit.FfsimSampler.__init__", false]], "__init__() (ffsim.qiskit.givensansatzoperatorjw method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorJW.__init__", false]], "__init__() (ffsim.qiskit.givensansatzoperatorspinlessjw method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.givensansatzopjw method)": [[4, "ffsim.qiskit.GivensAnsatzOpJW.__init__", false]], "__init__() (ffsim.qiskit.givensansatzopspinlessjw method)": [[4, "ffsim.qiskit.GivensAnsatzOpSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.numnumansatzopspinbalancedjw method)": [[4, "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW.__init__", false]], "__init__() (ffsim.qiskit.numopsumevolutionjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW.__init__", false]], "__init__() (ffsim.qiskit.numopsumevolutionspinlessjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.__init__", false]], "__init__() (ffsim.qiskit.orbitalrotationspinlessjw method)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.preparehartreefockjw method)": [[4, "ffsim.qiskit.PrepareHartreeFockJW.__init__", false]], "__init__() (ffsim.qiskit.preparehartreefockspinlessjw method)": [[4, "ffsim.qiskit.PrepareHartreeFockSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.prepareslaterdeterminantjw method)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantJW.__init__", false]], "__init__() (ffsim.qiskit.prepareslaterdeterminantspinlessjw method)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.simulatetrotterdoublefactorizedjw method)": [[4, "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW.__init__", false]], "__init__() (ffsim.qiskit.ucjoperatorjw method)": [[4, "ffsim.qiskit.UCJOperatorJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinbalancedjw method)": [[4, "ffsim.qiskit.UCJOpSpinBalancedJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinlessjw method)": [[4, "ffsim.qiskit.UCJOpSpinlessJW.__init__", false]], "__init__() (ffsim.qiskit.ucjopspinunbalancedjw method)": [[4, "ffsim.qiskit.UCJOpSpinUnbalancedJW.__init__", false]], "__init_subclass__() (ffsim.qiskit.givensansatzoperatorjw method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorJW.__init_subclass__", false]], "__init_subclass__() (ffsim.qiskit.givensansatzoperatorspinlessjw method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW.__init_subclass__", false]], "__init_subclass__() (ffsim.qiskit.ucjoperatorjw method)": [[4, "ffsim.qiskit.UCJOperatorJW.__init_subclass__", false]], "__new__() (ffsim.qiskit.givensansatzoperatorjw static method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorJW.__new__", false]], "__new__() (ffsim.qiskit.givensansatzoperatorspinlessjw static method)": [[4, "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW.__new__", false]], "__new__() (ffsim.qiskit.ucjoperatorjw static method)": [[4, "ffsim.qiskit.UCJOperatorJW.__new__", false]], "action (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.action", false]], "active_space (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.active_space", false]], "addresses_to_strings() (in module ffsim)": [[0, "ffsim.addresses_to_strings", false]], "alpha (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA", false]], "alpha_and_beta (ffsim.spin attribute)": [[0, "ffsim.Spin.ALPHA_AND_BETA", false]], "apply_diag_coulomb_evolution() (in module ffsim)": [[0, "ffsim.apply_diag_coulomb_evolution", false]], "apply_fsim_gate() (in module ffsim)": [[0, "ffsim.apply_fsim_gate", false]], "apply_fswap_gate() (in module ffsim)": [[0, "ffsim.apply_fswap_gate", false]], "apply_givens_rotation() (in module ffsim)": [[0, "ffsim.apply_givens_rotation", false]], "apply_hop_gate() (in module ffsim)": [[0, "ffsim.apply_hop_gate", false]], "apply_matrix_to_slices() (in module ffsim.linalg)": [[2, "ffsim.linalg.apply_matrix_to_slices", false]], "apply_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_interaction", false]], "apply_num_num_interaction() (in module ffsim)": [[0, "ffsim.apply_num_num_interaction", false]], "apply_num_op_prod_interaction() (in module ffsim)": [[0, "ffsim.apply_num_op_prod_interaction", false]], "apply_num_op_sum_evolution() (in module ffsim)": [[0, "ffsim.apply_num_op_sum_evolution", false]], "apply_on_site_interaction() (in module ffsim)": [[0, "ffsim.apply_on_site_interaction", false]], "apply_orbital_rotation() (in module ffsim)": [[0, "ffsim.apply_orbital_rotation", false]], "apply_tunneling_interaction() (in module ffsim)": [[0, "ffsim.apply_tunneling_interaction", false]], "apply_unitary() (in module ffsim)": [[0, "ffsim.apply_unitary", false]], "approx_eq() (in module ffsim)": [[0, "ffsim.approx_eq", false]], "assert_allclose_up_to_global_phase() (in module ffsim.testing)": [[6, "ffsim.testing.assert_allclose_up_to_global_phase", false]], "atom (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.atom", false]], "basis (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.basis", false]], "beta (ffsim.spin attribute)": [[0, "ffsim.Spin.BETA", false]], "bit_array (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.BIT_ARRAY", false]], "bitstringtype (class in ffsim)": [[0, "ffsim.BitstringType", false]], "c (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.c", false]], "ccsd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_energy", false]], "ccsd_t1 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t1", false]], "ccsd_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.ccsd_t2", false]], "cisd_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.cisd_energy", false]], "cisd_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.cisd_vec", false]], "coeffs (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.coeffs", false]], "conserves_particle_number() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_particle_number", false]], "conserves_spin_z() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.conserves_spin_z", false]], "constant (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.constant", false]], "constant (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.constant", false]], "constant (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.constant", false]], "constant (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.constant", false]], "contract_diag_coulomb() (in module ffsim.contract)": [[1, "ffsim.contract.contract_diag_coulomb", false]], "contract_num_op_sum() (in module ffsim.contract)": [[1, "ffsim.contract.contract_num_op_sum", false]], "contract_one_body() (in module ffsim.contract)": [[1, "ffsim.contract.contract_one_body", false]], "core_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.core_energy", false]], "cre() (in module ffsim)": [[0, "ffsim.cre", false]], "cre_a() (in module ffsim)": [[0, "ffsim.cre_a", false]], "cre_b() (in module ffsim)": [[0, "ffsim.cre_b", false]], "des() (in module ffsim)": [[0, "ffsim.des", false]], "des_a() (in module ffsim)": [[0, "ffsim.des_a", false]], "des_b() (in module ffsim)": [[0, "ffsim.des_b", false]], "diag() (in module ffsim)": [[0, "ffsim.diag", false]], "diag_coulomb_linop() (in module ffsim.contract)": [[1, "ffsim.contract.diag_coulomb_linop", false]], "diag_coulomb_mats (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.diag_coulomb_mats", false]], "diag_coulomb_mats (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.diag_coulomb_mats", false]], "diag_coulomb_mats_alpha_alpha (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.diag_coulomb_mats_alpha_alpha", false]], "diag_coulomb_mats_alpha_alpha (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_alpha", false]], "diag_coulomb_mats_alpha_beta (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.diag_coulomb_mats_alpha_beta", false]], "diag_coulomb_mats_alpha_beta (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.diag_coulomb_mats_alpha_beta", false]], "diagcoulombevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW", false]], "diagcoulombevolutionspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW", false]], "diagonalcoulombhamiltonian (class in ffsim)": [[0, "ffsim.DiagonalCoulombHamiltonian", false]], "dim() (in module ffsim)": [[0, "ffsim.dim", false]], "dims() (in module ffsim)": [[0, "ffsim.dims", false]], "dipole_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.dipole_integrals", false]], "double_factorized() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized", false]], "double_factorized_t2() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2", false]], "double_factorized_t2_alpha_beta() (in module ffsim.linalg)": [[2, "ffsim.linalg.double_factorized_t2_alpha_beta", false]], "doublefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.DoubleFactorizedHamiltonian", false]], "dropnegligible (class in ffsim.qiskit)": [[4, "ffsim.qiskit.DropNegligible", false]], "expectation_one_body_power() (in module ffsim)": [[0, "ffsim.expectation_one_body_power", false]], "expectation_one_body_product() (in module ffsim)": [[0, "ffsim.expectation_one_body_product", false]], "expectation_product_state() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.expectation_product_state", false]], "expm_multiply_taylor() (in module ffsim.linalg)": [[2, "ffsim.linalg.expm_multiply_taylor", false]], "fci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_energy", false]], "fci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.fci_vec", false]], "fermi_hubbard_1d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_1d", false]], "fermi_hubbard_2d() (in module ffsim)": [[0, "ffsim.fermi_hubbard_2d", false]], "fermion_operator() (in module ffsim)": [[0, "ffsim.fermion_operator", false]], "fermionaction (class in ffsim)": [[0, "ffsim.FermionAction", false]], "fermionoperator (class in ffsim)": [[0, "ffsim.FermionOperator", false]], "ffsim": [[0, "module-ffsim", false]], "ffsim.contract": [[1, "module-ffsim.contract", false]], "ffsim.linalg": [[2, "module-ffsim.linalg", false]], "ffsim.optimize": [[3, "module-ffsim.optimize", false]], "ffsim.qiskit": [[4, "module-ffsim.qiskit", false]], "ffsim.random": [[5, "module-ffsim.random", false]], "ffsim.testing": [[6, "module-ffsim.testing", false]], "ffsim_vec_to_qiskit_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.ffsim_vec_to_qiskit_vec", false]], "ffsimsampler (class in ffsim.qiskit)": [[4, "ffsim.qiskit.FfsimSampler", false]], "final_orbital_rotation (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.final_orbital_rotation", false]], "final_orbital_rotation (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.final_orbital_rotation", false]], "final_state_vector() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.final_state_vector", false]], "from_diag_coulomb_mats() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.from_diag_coulomb_mats", false]], "from_fcidump() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_fcidump", false]], "from_fcidump() (ffsim.molecularhamiltonian static method)": [[0, "ffsim.MolecularHamiltonian.from_fcidump", false]], "from_fermion_operator() (ffsim.diagonalcoulombhamiltonian static method)": [[0, "ffsim.DiagonalCoulombHamiltonian.from_fermion_operator", false]], "from_json() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_json", false]], "from_mole() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_mole", false]], "from_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian static method)": [[0, "ffsim.DoubleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_molecular_hamiltonian() (ffsim.singlefactorizedhamiltonian static method)": [[0, "ffsim.SingleFactorizedHamiltonian.from_molecular_hamiltonian", false]], "from_orbital_rotation() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.from_orbital_rotation", false]], "from_parameters() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.from_parameters", false]], "from_parameters() (ffsim.givensansatzoperator static method)": [[0, "ffsim.GivensAnsatzOperator.from_parameters", false]], "from_parameters() (ffsim.hopgateansatzoperator static method)": [[0, "ffsim.HopGateAnsatzOperator.from_parameters", false]], "from_parameters() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.from_parameters", false]], "from_parameters() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.from_parameters", false]], "from_parameters() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_parameters", false]], "from_parameters() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.from_parameters", false]], "from_parameters() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.from_parameters", false]], "from_parameters() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.from_parameters", false]], "from_scf() (ffsim.moleculardata static method)": [[0, "ffsim.MolecularData.from_scf", false]], "from_t_amplitudes() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.from_t_amplitudes", false]], "from_t_amplitudes() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.from_t_amplitudes", false]], "generate_norb_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec", false]], "generate_norb_nelec_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nelec_spin", false]], "generate_norb_nocc() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_nocc", false]], "generate_norb_spin() (in module ffsim.testing)": [[6, "ffsim.testing.generate_norb_spin", false]], "givens_decomposition() (in module ffsim.linalg)": [[2, "ffsim.linalg.givens_decomposition", false]], "givensansatzop (class in ffsim)": [[0, "ffsim.GivensAnsatzOp", false]], "givensansatzoperator (class in ffsim)": [[0, "ffsim.GivensAnsatzOperator", false]], "givensansatzoperatorjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOperatorJW", false]], "givensansatzoperatorspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW", false]], "givensansatzopjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOpJW", false]], "givensansatzopspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.GivensAnsatzOpSpinlessJW", false]], "givensrotation (class in ffsim.linalg)": [[2, "ffsim.linalg.GivensRotation", false]], "hamiltonian (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.hamiltonian", false]], "hartree_fock_state() (in module ffsim)": [[0, "ffsim.hartree_fock_state", false]], "hf_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_energy", false]], "hf_mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_mo_coeff", false]], "hf_mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.hf_mo_occ", false]], "hopgateansatzoperator (class in ffsim)": [[0, "ffsim.HopGateAnsatzOperator", false]], "i (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.i", false]], "indices_to_strings() (in module ffsim)": [[0, "ffsim.indices_to_strings", false]], "init_cache() (in module ffsim)": [[0, "ffsim.init_cache", false]], "int (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.INT", false]], "interaction_pairs (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.interaction_pairs", false]], "interaction_pairs (ffsim.givensansatzoperator attribute)": [[0, "ffsim.GivensAnsatzOperator.interaction_pairs", false]], "interaction_pairs (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.interaction_pairs", false]], "interaction_pairs (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.interaction_pairs", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.diagcoulombevolutionspinlessjw method)": [[4, "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW.inverse", false]], "inverse() (ffsim.qiskit.numopsumevolutionjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW.inverse", false]], "inverse() (ffsim.qiskit.numopsumevolutionspinlessjw method)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationjw method)": [[4, "ffsim.qiskit.OrbitalRotationJW.inverse", false]], "inverse() (ffsim.qiskit.orbitalrotationspinlessjw method)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW.inverse", false]], "is_antihermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_antihermitian", false]], "is_hermitian() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_hermitian", false]], "is_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_orthogonal", false]], "is_real_symmetric() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_real_symmetric", false]], "is_special_orthogonal() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_special_orthogonal", false]], "is_unitary() (in module ffsim.linalg)": [[2, "ffsim.linalg.is_unitary", false]], "j (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.j", false]], "jordan_wigner() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.jordan_wigner", false]], "linear_operator() (in module ffsim)": [[0, "ffsim.linear_operator", false]], "lup() (in module ffsim.linalg)": [[2, "ffsim.linalg.lup", false]], "many_body_order() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.many_body_order", false]], "match_global_phase() (in module ffsim.linalg)": [[2, "ffsim.linalg.match_global_phase", false]], "mergeorbitalrotations (class in ffsim.qiskit)": [[4, "ffsim.qiskit.MergeOrbitalRotations", false]], "minimize_linear_method() (in module ffsim.optimize)": [[3, "ffsim.optimize.minimize_linear_method", false]], "mo_coeff (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_coeff", false]], "mo_occ (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mo_occ", false]], "modified_cholesky() (in module ffsim.linalg)": [[2, "ffsim.linalg.modified_cholesky", false]], "module": [[0, "module-ffsim", false], [1, "module-ffsim.contract", false], [2, "module-ffsim.linalg", false], [3, "module-ffsim.optimize", false], [4, "module-ffsim.qiskit", false], [5, "module-ffsim.random", false], [6, "module-ffsim.testing", false]], "mole (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.mole", false]], "moleculardata (class in ffsim)": [[0, "ffsim.MolecularData", false]], "molecularhamiltonian (class in ffsim)": [[0, "ffsim.MolecularHamiltonian", false]], "mp2_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_energy", false]], "mp2_t2 (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.mp2_t2", false]], "multireference_state() (in module ffsim)": [[0, "ffsim.multireference_state", false]], "multireference_state_prod() (in module ffsim)": [[0, "ffsim.multireference_state_prod", false]], "n_params() (ffsim.givensansatzop static method)": [[0, "ffsim.GivensAnsatzOp.n_params", false]], "n_params() (ffsim.numnumansatzopspinbalanced static method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.n_params", false]], "n_params() (ffsim.realucjoperator static method)": [[0, "ffsim.RealUCJOperator.n_params", false]], "n_params() (ffsim.ucjoperator static method)": [[0, "ffsim.UCJOperator.n_params", false]], "n_params() (ffsim.ucjopspinbalanced static method)": [[0, "ffsim.UCJOpSpinBalanced.n_params", false]], "n_params() (ffsim.ucjopspinless static method)": [[0, "ffsim.UCJOpSpinless.n_params", false]], "n_params() (ffsim.ucjopspinunbalanced static method)": [[0, "ffsim.UCJOpSpinUnbalanced.n_params", false]], "n_reps (ffsim.realucjoperator property)": [[0, "ffsim.RealUCJOperator.n_reps", false]], "n_reps (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.n_reps", false]], "n_reps (ffsim.ucjopspinbalanced property)": [[0, "ffsim.UCJOpSpinBalanced.n_reps", false]], "n_reps (ffsim.ucjopspinless property)": [[0, "ffsim.UCJOpSpinless.n_reps", false]], "n_reps (ffsim.ucjopspinunbalanced property)": [[0, "ffsim.UCJOpSpinUnbalanced.n_reps", false]], "nelec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.nelec", false]], "nelec (ffsim.statevector attribute)": [[0, "ffsim.StateVector.nelec", false]], "norb (ffsim.diagonalcoulombhamiltonian property)": [[0, "ffsim.DiagonalCoulombHamiltonian.norb", false]], "norb (ffsim.doublefactorizedhamiltonian property)": [[0, "ffsim.DoubleFactorizedHamiltonian.norb", false]], "norb (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.norb", false]], "norb (ffsim.givensansatzoperator attribute)": [[0, "ffsim.GivensAnsatzOperator.norb", false]], "norb (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.norb", false]], "norb (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.norb", false]], "norb (ffsim.molecularhamiltonian property)": [[0, "ffsim.MolecularHamiltonian.norb", false]], "norb (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.norb", false]], "norb (ffsim.realucjoperator property)": [[0, "ffsim.RealUCJOperator.norb", false]], "norb (ffsim.singlefactorizedhamiltonian property)": [[0, "ffsim.SingleFactorizedHamiltonian.norb", false]], "norb (ffsim.statevector attribute)": [[0, "ffsim.StateVector.norb", false]], "norb (ffsim.ucjoperator property)": [[0, "ffsim.UCJOperator.norb", false]], "norb (ffsim.ucjopspinbalanced property)": [[0, "ffsim.UCJOpSpinBalanced.norb", false]], "norb (ffsim.ucjopspinless property)": [[0, "ffsim.UCJOpSpinless.norb", false]], "norb (ffsim.ucjopspinunbalanced property)": [[0, "ffsim.UCJOpSpinUnbalanced.norb", false]], "normal_ordered() (ffsim.fermionoperator method)": [[0, "ffsim.FermionOperator.normal_ordered", false]], "num_op_sum_linop() (in module ffsim.contract)": [[1, "ffsim.contract.num_op_sum_linop", false]], "number_operator() (in module ffsim)": [[0, "ffsim.number_operator", false]], "numnumansatzopspinbalanced (class in ffsim)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced", false]], "numnumansatzopspinbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW", false]], "numopsumevolutionjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumOpSumEvolutionJW", false]], "numopsumevolutionspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.NumOpSumEvolutionSpinlessJW", false]], "one_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.one_body_integrals", false]], "one_body_linop() (in module ffsim.contract)": [[1, "ffsim.contract.one_body_linop", false]], "one_body_squares (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_squares", false]], "one_body_tensor (ffsim.diagonalcoulombhamiltonian attribute)": [[0, "ffsim.DiagonalCoulombHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.one_body_tensor", false]], "one_body_tensor (ffsim.singlefactorizedhamiltonian attribute)": [[0, "ffsim.SingleFactorizedHamiltonian.one_body_tensor", false]], "one_hot() (in module ffsim)": [[0, "ffsim.one_hot", false]], "one_hot() (in module ffsim.linalg)": [[2, "ffsim.linalg.one_hot", false]], "orb (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.orb", false]], "orbital_rotations (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.orbital_rotations", false]], "orbital_rotations (ffsim.realucjoperator attribute)": [[0, "ffsim.RealUCJOperator.orbital_rotations", false]], "orbital_rotations (ffsim.ucjoperator attribute)": [[0, "ffsim.UCJOperator.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinbalanced attribute)": [[0, "ffsim.UCJOpSpinBalanced.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinless attribute)": [[0, "ffsim.UCJOpSpinless.orbital_rotations", false]], "orbital_rotations (ffsim.ucjopspinunbalanced attribute)": [[0, "ffsim.UCJOpSpinUnbalanced.orbital_rotations", false]], "orbital_symmetries (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.orbital_symmetries", false]], "orbitalrotationjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationJW", false]], "orbitalrotationspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.OrbitalRotationSpinlessJW", false]], "phase_angles (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.phase_angles", false]], "phis (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.phis", false]], "pre_init (in module ffsim.qiskit)": [[4, "ffsim.qiskit.PRE_INIT", false]], "pre_init_passes() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.pre_init_passes", false]], "preparehartreefockjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareHartreeFockJW", false]], "preparehartreefockspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareHartreeFockSpinlessJW", false]], "prepareslaterdeterminantjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantJW", false]], "prepareslaterdeterminantspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW", false]], "productstatesum (class in ffsim)": [[0, "ffsim.ProductStateSum", false]], "qiskit_vec_to_ffsim_vec() (in module ffsim.qiskit)": [[4, "ffsim.qiskit.qiskit_vec_to_ffsim_vec", false]], "random_antihermitian() (in module ffsim.random)": [[5, "ffsim.random.random_antihermitian", false]], "random_double_factorized_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_double_factorized_hamiltonian", false]], "random_fermion_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_fermion_hamiltonian", false]], "random_fermion_operator() (in module ffsim.random)": [[5, "ffsim.random.random_fermion_operator", false]], "random_hermitian() (in module ffsim.random)": [[5, "ffsim.random.random_hermitian", false]], "random_molecular_hamiltonian() (in module ffsim.random)": [[5, "ffsim.random.random_molecular_hamiltonian", false]], "random_nelec() (in module ffsim.testing)": [[6, "ffsim.testing.random_nelec", false]], "random_occupied_orbitals() (in module ffsim.testing)": [[6, "ffsim.testing.random_occupied_orbitals", false]], "random_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_orthogonal", false]], "random_real_symmetric_matrix() (in module ffsim.random)": [[5, "ffsim.random.random_real_symmetric_matrix", false]], "random_special_orthogonal() (in module ffsim.random)": [[5, "ffsim.random.random_special_orthogonal", false]], "random_state_vector() (in module ffsim.random)": [[5, "ffsim.random.random_state_vector", false]], "random_statevector() (in module ffsim.random)": [[5, "ffsim.random.random_statevector", false]], "random_t2_amplitudes() (in module ffsim.random)": [[5, "ffsim.random.random_t2_amplitudes", false]], "random_two_body_tensor() (in module ffsim.random)": [[5, "ffsim.random.random_two_body_tensor", false]], "random_ucj_op_spin_balanced() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spin_balanced", false]], "random_ucj_op_spin_unbalanced() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spin_unbalanced", false]], "random_ucj_op_spinless() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_op_spinless", false]], "random_ucj_operator() (in module ffsim.random)": [[5, "ffsim.random.random_ucj_operator", false]], "random_unitary() (in module ffsim.random)": [[5, "ffsim.random.random_unitary", false]], "rdm() (in module ffsim)": [[0, "ffsim.rdm", false]], "rdms() (in module ffsim)": [[0, "ffsim.rdms", false]], "realucjoperator (class in ffsim)": [[0, "ffsim.RealUCJOperator", false]], "reduced_matrix() (in module ffsim.linalg)": [[2, "ffsim.linalg.reduced_matrix", false]], "reduced_matrix_product_states() (ffsim.singlefactorizedhamiltonian method)": [[0, "ffsim.SingleFactorizedHamiltonian.reduced_matrix_product_states", false]], "rotated() (ffsim.molecularhamiltonian method)": [[0, "ffsim.MolecularHamiltonian.rotated", false]], "run() (ffsim.qiskit.dropnegligible method)": [[4, "ffsim.qiskit.DropNegligible.run", false]], "run() (ffsim.qiskit.ffsimsampler method)": [[4, "ffsim.qiskit.FfsimSampler.run", false]], "run() (ffsim.qiskit.mergeorbitalrotations method)": [[4, "ffsim.qiskit.MergeOrbitalRotations.run", false]], "run_ccsd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_ccsd", false]], "run_cisd() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_cisd", false]], "run_fci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_fci", false]], "run_mp2() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_mp2", false]], "run_sci() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.run_sci", false]], "s (ffsim.linalg.givensrotation attribute)": [[2, "ffsim.linalg.GivensRotation.s", false]], "sample_slater_determinant() (in module ffsim)": [[0, "ffsim.sample_slater_determinant", false]], "sample_state_vector() (in module ffsim)": [[0, "ffsim.sample_state_vector", false]], "scf (ffsim.moleculardata property)": [[0, "ffsim.MolecularData.scf", false]], "sci_energy (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.sci_energy", false]], "sci_vec (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.sci_vec", false]], "simulate_qdrift_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_qdrift_double_factorized", false]], "simulate_trotter_diag_coulomb_split_op() (in module ffsim)": [[0, "ffsim.simulate_trotter_diag_coulomb_split_op", false]], "simulate_trotter_double_factorized() (in module ffsim)": [[0, "ffsim.simulate_trotter_double_factorized", false]], "simulatetrotterdoublefactorizedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW", false]], "singlefactorizedhamiltonian (class in ffsim)": [[0, "ffsim.SingleFactorizedHamiltonian", false]], "slater_determinant() (in module ffsim)": [[0, "ffsim.slater_determinant", false]], "slater_determinant_rdm() (in module ffsim)": [[0, "ffsim.slater_determinant_rdm", false]], "slater_determinant_rdms() (in module ffsim)": [[0, "ffsim.slater_determinant_rdms", false]], "spin (class in ffsim)": [[0, "ffsim.Spin", false]], "spin (ffsim.fermionaction attribute)": [[0, "ffsim.FermionAction.spin", false]], "spin (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.spin", false]], "spin_square() (in module ffsim)": [[0, "ffsim.spin_square", false]], "states (ffsim.productstatesum attribute)": [[0, "ffsim.ProductStateSum.states", false]], "statevector (class in ffsim)": [[0, "ffsim.StateVector", false]], "string (ffsim.bitstringtype attribute)": [[0, "ffsim.BitstringType.STRING", false]], "strings_to_addresses() (in module ffsim)": [[0, "ffsim.strings_to_addresses", false]], "strings_to_indices() (in module ffsim)": [[0, "ffsim.strings_to_indices", false]], "supportsapplyunitary (class in ffsim)": [[0, "ffsim.SupportsApplyUnitary", false]], "supportsapproximateequality (class in ffsim)": [[0, "ffsim.SupportsApproximateEquality", false]], "supportsdiagonal (class in ffsim)": [[0, "ffsim.SupportsDiagonal", false]], "supportsfermionoperator (class in ffsim)": [[0, "ffsim.SupportsFermionOperator", false]], "supportslinearoperator (class in ffsim)": [[0, "ffsim.SupportsLinearOperator", false]], "supportstrace (class in ffsim)": [[0, "ffsim.SupportsTrace", false]], "symmetry (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.symmetry", false]], "thetas (ffsim.givensansatzop attribute)": [[0, "ffsim.GivensAnsatzOp.thetas", false]], "thetas (ffsim.givensansatzoperator attribute)": [[0, "ffsim.GivensAnsatzOperator.thetas", false]], "thetas (ffsim.hopgateansatzoperator attribute)": [[0, "ffsim.HopGateAnsatzOperator.thetas", false]], "thetas (ffsim.numnumansatzopspinbalanced attribute)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.thetas", false]], "to_diag_coulomb_mats() (ffsim.numnumansatzopspinbalanced method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.to_diag_coulomb_mats", false]], "to_fcidump() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.to_fcidump", false]], "to_json() (ffsim.moleculardata method)": [[0, "ffsim.MolecularData.to_json", false]], "to_molecular_hamiltonian() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_molecular_hamiltonian", false]], "to_number_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_number_representation", false]], "to_orbital_rotation() (ffsim.givensansatzop method)": [[0, "ffsim.GivensAnsatzOp.to_orbital_rotation", false]], "to_parameters() (ffsim.givensansatzop method)": [[0, "ffsim.GivensAnsatzOp.to_parameters", false]], "to_parameters() (ffsim.givensansatzoperator method)": [[0, "ffsim.GivensAnsatzOperator.to_parameters", false]], "to_parameters() (ffsim.hopgateansatzoperator method)": [[0, "ffsim.HopGateAnsatzOperator.to_parameters", false]], "to_parameters() (ffsim.numnumansatzopspinbalanced method)": [[0, "ffsim.NumNumAnsatzOpSpinBalanced.to_parameters", false]], "to_parameters() (ffsim.realucjoperator method)": [[0, "ffsim.RealUCJOperator.to_parameters", false]], "to_parameters() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_parameters", false]], "to_parameters() (ffsim.ucjopspinbalanced method)": [[0, "ffsim.UCJOpSpinBalanced.to_parameters", false]], "to_parameters() (ffsim.ucjopspinless method)": [[0, "ffsim.UCJOpSpinless.to_parameters", false]], "to_parameters() (ffsim.ucjopspinunbalanced method)": [[0, "ffsim.UCJOpSpinUnbalanced.to_parameters", false]], "to_t_amplitudes() (ffsim.realucjoperator method)": [[0, "ffsim.RealUCJOperator.to_t_amplitudes", false]], "to_t_amplitudes() (ffsim.ucjoperator method)": [[0, "ffsim.UCJOperator.to_t_amplitudes", false]], "to_z_representation() (ffsim.doublefactorizedhamiltonian method)": [[0, "ffsim.DoubleFactorizedHamiltonian.to_z_representation", false]], "trace() (in module ffsim)": [[0, "ffsim.trace", false]], "two_body_integrals (ffsim.moleculardata attribute)": [[0, "ffsim.MolecularData.two_body_integrals", false]], "two_body_tensor (ffsim.molecularhamiltonian attribute)": [[0, "ffsim.MolecularHamiltonian.two_body_tensor", false]], "ucjoperator (class in ffsim)": [[0, "ffsim.UCJOperator", false]], "ucjoperatorjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOperatorJW", false]], "ucjopspinbalanced (class in ffsim)": [[0, "ffsim.UCJOpSpinBalanced", false]], "ucjopspinbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinBalancedJW", false]], "ucjopspinless (class in ffsim)": [[0, "ffsim.UCJOpSpinless", false]], "ucjopspinlessjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinlessJW", false]], "ucjopspinunbalanced (class in ffsim)": [[0, "ffsim.UCJOpSpinUnbalanced", false]], "ucjopspinunbalancedjw (class in ffsim.qiskit)": [[4, "ffsim.qiskit.UCJOpSpinUnbalancedJW", false]], "vec (ffsim.statevector attribute)": [[0, "ffsim.StateVector.vec", false]], "z_representation (ffsim.doublefactorizedhamiltonian attribute)": [[0, "ffsim.DoubleFactorizedHamiltonian.z_representation", false]]}, "objects": {"": [[0, 0, 0, "-", "ffsim"]], "ffsim": [[0, 1, 1, "", "BitstringType"], [0, 1, 1, "", "DiagonalCoulombHamiltonian"], [0, 1, 1, "", "DoubleFactorizedHamiltonian"], [0, 1, 1, "", "FermionAction"], [0, 1, 1, "", "FermionOperator"], [0, 1, 1, "", "GivensAnsatzOp"], [0, 1, 1, "", "GivensAnsatzOperator"], [0, 1, 1, "", "HopGateAnsatzOperator"], [0, 1, 1, "", "MolecularData"], [0, 1, 1, "", "MolecularHamiltonian"], [0, 1, 1, "", "NumNumAnsatzOpSpinBalanced"], [0, 1, 1, "", "ProductStateSum"], [0, 1, 1, "", "RealUCJOperator"], [0, 1, 1, "", "SingleFactorizedHamiltonian"], [0, 1, 1, "", "Spin"], [0, 1, 1, "", "StateVector"], [0, 1, 1, "", "SupportsApplyUnitary"], [0, 1, 1, "", "SupportsApproximateEquality"], [0, 1, 1, "", "SupportsDiagonal"], [0, 1, 1, "", "SupportsFermionOperator"], [0, 1, 1, "", "SupportsLinearOperator"], [0, 1, 1, "", "SupportsTrace"], [0, 1, 1, "", "UCJOpSpinBalanced"], [0, 1, 1, "", "UCJOpSpinUnbalanced"], [0, 1, 1, "", "UCJOpSpinless"], [0, 1, 1, "", "UCJOperator"], [0, 5, 1, "", "addresses_to_strings"], [0, 5, 1, "", "apply_diag_coulomb_evolution"], [0, 5, 1, "", "apply_fsim_gate"], [0, 5, 1, "", "apply_fswap_gate"], [0, 5, 1, "", "apply_givens_rotation"], [0, 5, 1, "", "apply_hop_gate"], [0, 5, 1, "", "apply_num_interaction"], [0, 5, 1, "", "apply_num_num_interaction"], [0, 5, 1, "", "apply_num_op_prod_interaction"], [0, 5, 1, "", "apply_num_op_sum_evolution"], [0, 5, 1, "", "apply_on_site_interaction"], [0, 5, 1, "", "apply_orbital_rotation"], [0, 5, 1, "", "apply_tunneling_interaction"], [0, 5, 1, "", "apply_unitary"], [0, 5, 1, "", "approx_eq"], [1, 0, 0, "-", "contract"], [0, 5, 1, "", "cre"], [0, 5, 1, "", "cre_a"], [0, 5, 1, "", "cre_b"], [0, 5, 1, "", "des"], [0, 5, 1, "", "des_a"], [0, 5, 1, "", "des_b"], [0, 5, 1, "", "diag"], [0, 5, 1, "", "dim"], [0, 5, 1, "", "dims"], [0, 5, 1, "", "expectation_one_body_power"], [0, 5, 1, "", "expectation_one_body_product"], [0, 5, 1, "", "fermi_hubbard_1d"], [0, 5, 1, "", "fermi_hubbard_2d"], [0, 5, 1, "", "fermion_operator"], [0, 5, 1, "", "hartree_fock_state"], [0, 5, 1, "", "indices_to_strings"], [0, 5, 1, "", "init_cache"], [2, 0, 0, "-", "linalg"], [0, 5, 1, "", "linear_operator"], [0, 5, 1, "", "multireference_state"], [0, 5, 1, "", "multireference_state_prod"], [0, 5, 1, "", "number_operator"], [0, 5, 1, "", "one_hot"], [3, 0, 0, "-", "optimize"], [4, 0, 0, "-", "qiskit"], [5, 0, 0, "-", "random"], [0, 5, 1, "", "rdm"], [0, 5, 1, "", "rdms"], [0, 5, 1, "", "sample_slater_determinant"], [0, 5, 1, "", "sample_state_vector"], [0, 5, 1, "", "simulate_qdrift_double_factorized"], [0, 5, 1, "", "simulate_trotter_diag_coulomb_split_op"], [0, 5, 1, "", "simulate_trotter_double_factorized"], [0, 5, 1, "", "slater_determinant"], [0, 5, 1, "", "slater_determinant_rdm"], [0, 5, 1, "", "slater_determinant_rdms"], [0, 5, 1, "", "spin_square"], [0, 5, 1, "", "strings_to_addresses"], [0, 5, 1, "", "strings_to_indices"], [6, 0, 0, "-", "testing"], [0, 5, 1, "", "trace"]], "ffsim.BitstringType": [[0, 2, 1, "", "BIT_ARRAY"], [0, 2, 1, "", "INT"], [0, 2, 1, "", "STRING"]], "ffsim.DiagonalCoulombHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_fermion_operator"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"]], "ffsim.DoubleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 2, 1, "", "diag_coulomb_mats"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_molecular_hamiltonian"], [0, 3, 1, "", "to_number_representation"], [0, 3, 1, "", "to_z_representation"], [0, 2, 1, "", "z_representation"]], "ffsim.FermionAction": [[0, 2, 1, "", "action"], [0, 2, 1, "", "orb"], [0, 2, 1, "", "spin"]], "ffsim.FermionOperator": [[0, 3, 1, "", "conserves_particle_number"], [0, 3, 1, "", "conserves_spin_z"], [0, 3, 1, "", "many_body_order"], [0, 3, 1, "", "normal_ordered"]], "ffsim.GivensAnsatzOp": [[0, 3, 1, "", "from_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 3, 1, "", "n_params"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "phase_angles"], [0, 2, 1, "", "phis"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_orbital_rotation"], [0, 3, 1, "", "to_parameters"]], "ffsim.GivensAnsatzOperator": [[0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_parameters"]], "ffsim.HopGateAnsatzOperator": [[0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_parameters"]], "ffsim.MolecularData": [[0, 2, 1, "", "active_space"], [0, 2, 1, "", "atom"], [0, 2, 1, "", "basis"], [0, 2, 1, "", "ccsd_energy"], [0, 2, 1, "", "ccsd_t1"], [0, 2, 1, "", "ccsd_t2"], [0, 2, 1, "", "cisd_energy"], [0, 2, 1, "", "cisd_vec"], [0, 2, 1, "", "core_energy"], [0, 2, 1, "", "dipole_integrals"], [0, 2, 1, "", "fci_energy"], [0, 2, 1, "", "fci_vec"], [0, 3, 1, "", "from_fcidump"], [0, 3, 1, "", "from_json"], [0, 3, 1, "", "from_mole"], [0, 3, 1, "", "from_scf"], [0, 4, 1, "", "hamiltonian"], [0, 2, 1, "", "hf_energy"], [0, 2, 1, "", "hf_mo_coeff"], [0, 2, 1, "", "hf_mo_occ"], [0, 2, 1, "", "mo_coeff"], [0, 2, 1, "", "mo_occ"], [0, 4, 1, "", "mole"], [0, 2, 1, "", "mp2_energy"], [0, 2, 1, "", "mp2_t2"], [0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "one_body_integrals"], [0, 2, 1, "", "orbital_symmetries"], [0, 3, 1, "", "run_ccsd"], [0, 3, 1, "", "run_cisd"], [0, 3, 1, "", "run_fci"], [0, 3, 1, "", "run_mp2"], [0, 3, 1, "", "run_sci"], [0, 4, 1, "", "scf"], [0, 2, 1, "", "sci_energy"], [0, 2, 1, "", "sci_vec"], [0, 2, 1, "", "spin"], [0, 2, 1, "", "symmetry"], [0, 3, 1, "", "to_fcidump"], [0, 3, 1, "", "to_json"], [0, 2, 1, "", "two_body_integrals"]], "ffsim.MolecularHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "from_fcidump"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "rotated"], [0, 2, 1, "", "two_body_tensor"]], "ffsim.NumNumAnsatzOpSpinBalanced": [[0, 3, 1, "", "from_diag_coulomb_mats"], [0, 3, 1, "", "from_parameters"], [0, 2, 1, "", "interaction_pairs"], [0, 3, 1, "", "n_params"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "thetas"], [0, 3, 1, "", "to_diag_coulomb_mats"], [0, 3, 1, "", "to_parameters"]], "ffsim.ProductStateSum": [[0, 2, 1, "", "coeffs"], [0, 2, 1, "", "states"]], "ffsim.RealUCJOperator": [[0, 2, 1, "", "diag_coulomb_mats_alpha_alpha"], [0, 2, 1, "", "diag_coulomb_mats_alpha_beta"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"], [0, 3, 1, "", "to_t_amplitudes"]], "ffsim.SingleFactorizedHamiltonian": [[0, 2, 1, "", "constant"], [0, 3, 1, "", "expectation_product_state"], [0, 3, 1, "", "from_molecular_hamiltonian"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "one_body_squares"], [0, 2, 1, "", "one_body_tensor"], [0, 3, 1, "", "reduced_matrix_product_states"]], "ffsim.Spin": [[0, 2, 1, "", "ALPHA"], [0, 2, 1, "", "ALPHA_AND_BETA"], [0, 2, 1, "", "BETA"]], "ffsim.StateVector": [[0, 2, 1, "", "nelec"], [0, 2, 1, "", "norb"], [0, 2, 1, "", "vec"]], "ffsim.UCJOpSpinBalanced": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinUnbalanced": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOpSpinless": [[0, 2, 1, "", "diag_coulomb_mats"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"]], "ffsim.UCJOperator": [[0, 2, 1, "", "diag_coulomb_mats_alpha_alpha"], [0, 2, 1, "", "diag_coulomb_mats_alpha_beta"], [0, 2, 1, "", "final_orbital_rotation"], [0, 3, 1, "", "from_parameters"], [0, 3, 1, "", "from_t_amplitudes"], [0, 3, 1, "", "n_params"], [0, 4, 1, "", "n_reps"], [0, 4, 1, "", "norb"], [0, 2, 1, "", "orbital_rotations"], [0, 3, 1, "", "to_parameters"], [0, 3, 1, "", "to_t_amplitudes"]], "ffsim.contract": [[1, 5, 1, "", "contract_diag_coulomb"], [1, 5, 1, "", "contract_num_op_sum"], [1, 5, 1, "", "contract_one_body"], [1, 5, 1, "", "diag_coulomb_linop"], [1, 5, 1, "", "num_op_sum_linop"], [1, 5, 1, "", "one_body_linop"]], "ffsim.linalg": [[2, 1, 1, "", "GivensRotation"], [2, 5, 1, "", "apply_matrix_to_slices"], [2, 5, 1, "", "double_factorized"], [2, 5, 1, "", "double_factorized_t2"], [2, 5, 1, "", "double_factorized_t2_alpha_beta"], [2, 5, 1, "", "expm_multiply_taylor"], [2, 5, 1, "", "givens_decomposition"], [2, 5, 1, "", "is_antihermitian"], [2, 5, 1, "", "is_hermitian"], [2, 5, 1, "", "is_orthogonal"], [2, 5, 1, "", "is_real_symmetric"], [2, 5, 1, "", "is_special_orthogonal"], [2, 5, 1, "", "is_unitary"], [2, 5, 1, "", "lup"], [2, 5, 1, "", "match_global_phase"], [2, 5, 1, "", "modified_cholesky"], [2, 5, 1, "", "one_hot"], [2, 5, 1, "", "reduced_matrix"]], "ffsim.linalg.GivensRotation": [[2, 2, 1, "", "c"], [2, 2, 1, "", "i"], [2, 2, 1, "", "j"], [2, 2, 1, "", "s"]], "ffsim.optimize": [[3, 5, 1, "", "minimize_linear_method"]], "ffsim.qiskit": [[4, 1, 1, "", "DiagCoulombEvolutionJW"], [4, 1, 1, "", "DiagCoulombEvolutionSpinlessJW"], [4, 1, 1, "", "DropNegligible"], [4, 1, 1, "", "FfsimSampler"], [4, 1, 1, "", "GivensAnsatzOpJW"], [4, 1, 1, "", "GivensAnsatzOpSpinlessJW"], [4, 1, 1, "", "GivensAnsatzOperatorJW"], [4, 1, 1, "", "GivensAnsatzOperatorSpinlessJW"], [4, 1, 1, "", "MergeOrbitalRotations"], [4, 1, 1, "", "NumNumAnsatzOpSpinBalancedJW"], [4, 1, 1, "", "NumOpSumEvolutionJW"], [4, 1, 1, "", "NumOpSumEvolutionSpinlessJW"], [4, 1, 1, "", "OrbitalRotationJW"], [4, 1, 1, "", "OrbitalRotationSpinlessJW"], [4, 6, 1, "", "PRE_INIT"], [4, 1, 1, "", "PrepareHartreeFockJW"], [4, 1, 1, "", "PrepareHartreeFockSpinlessJW"], [4, 1, 1, "", "PrepareSlaterDeterminantJW"], [4, 1, 1, "", "PrepareSlaterDeterminantSpinlessJW"], [4, 1, 1, "", "SimulateTrotterDoubleFactorizedJW"], [4, 1, 1, "", "UCJOpSpinBalancedJW"], [4, 1, 1, "", "UCJOpSpinUnbalancedJW"], [4, 1, 1, "", "UCJOpSpinlessJW"], [4, 1, 1, "", "UCJOperatorJW"], [4, 5, 1, "", "ffsim_vec_to_qiskit_vec"], [4, 5, 1, "", "final_state_vector"], [4, 5, 1, "", "jordan_wigner"], [4, 5, 1, "", "pre_init_passes"], [4, 5, 1, "", "qiskit_vec_to_ffsim_vec"]], "ffsim.qiskit.DiagCoulombEvolutionJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.DiagCoulombEvolutionSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.DropNegligible": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "run"]], "ffsim.qiskit.FfsimSampler": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "run"]], "ffsim.qiskit.GivensAnsatzOpJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.GivensAnsatzOpSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.GivensAnsatzOperatorJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "__init_subclass__"], [4, 3, 1, "", "__new__"]], "ffsim.qiskit.GivensAnsatzOperatorSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "__init_subclass__"], [4, 3, 1, "", "__new__"]], "ffsim.qiskit.MergeOrbitalRotations": [[4, 3, 1, "", "run"]], "ffsim.qiskit.NumNumAnsatzOpSpinBalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.NumOpSumEvolutionJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.NumOpSumEvolutionSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.OrbitalRotationJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.OrbitalRotationSpinlessJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "inverse"]], "ffsim.qiskit.PrepareHartreeFockJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareHartreeFockSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareSlaterDeterminantJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.PrepareSlaterDeterminantSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.SimulateTrotterDoubleFactorizedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinBalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinUnbalancedJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOpSpinlessJW": [[4, 3, 1, "", "__init__"]], "ffsim.qiskit.UCJOperatorJW": [[4, 3, 1, "", "__init__"], [4, 3, 1, "", "__init_subclass__"], [4, 3, 1, "", "__new__"]], "ffsim.random": [[5, 5, 1, "", "random_antihermitian"], [5, 5, 1, "", "random_double_factorized_hamiltonian"], [5, 5, 1, "", "random_fermion_hamiltonian"], [5, 5, 1, "", "random_fermion_operator"], [5, 5, 1, "", "random_hermitian"], [5, 5, 1, "", "random_molecular_hamiltonian"], [5, 5, 1, "", "random_orthogonal"], [5, 5, 1, "", "random_real_symmetric_matrix"], [5, 5, 1, "", "random_special_orthogonal"], [5, 5, 1, "", "random_state_vector"], [5, 5, 1, "", "random_statevector"], [5, 5, 1, "", "random_t2_amplitudes"], [5, 5, 1, "", "random_two_body_tensor"], [5, 5, 1, "", "random_ucj_op_spin_balanced"], [5, 5, 1, "", "random_ucj_op_spin_unbalanced"], [5, 5, 1, "", "random_ucj_op_spinless"], [5, 5, 1, "", "random_ucj_operator"], [5, 5, 1, "", "random_unitary"]], "ffsim.testing": [[6, 5, 1, "", "assert_allclose_up_to_global_phase"], [6, 5, 1, "", "generate_norb_nelec"], [6, 5, 1, "", "generate_norb_nelec_spin"], [6, 5, 1, "", "generate_norb_nocc"], [6, 5, 1, "", "generate_norb_spin"], [6, 5, 1, "", "random_nelec"], [6, 5, 1, "", "random_occupied_orbitals"]]}, "objnames": {"0": ["py", "module", "Python module"], "1": ["py", "class", "Python class"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "method", "Python method"], "4": ["py", "property", "Python property"], "5": ["py", "function", "Python function"], "6": ["py", "data", "Python data"]}, "objtypes": {"0": "py:module", "1": "py:class", "2": "py:attribute", "3": "py:method", "4": "py:property", "5": "py:function", "6": "py:data"}, "terms": {"": [0, 2, 4, 8, 9, 13, 14, 15, 16, 17, 18, 19, 21, 22, 23], "0": [0, 2, 3, 4, 6, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 21, 23], "00": 18, "000": 20, "0000000": [15, 18], "0000000000011100000000000111": 20, "0000000000011100000000011100": 20, "0000000000011100100000001100": 20, "0000000000110100000000001101": 20, "0000000000110100010000000101": 20, "0000000001011000000000010110": 20, "0000000001011000100000000110": 20, "0000000001110000000000000111": 20, "0000000111100000011111": 20, "0000000111100110000111": 20, "0000010101100001011011": 20, "0000010110100001011011": 20, "0000100101100000111011": 20, "0000100110100000111011": 20, "0000111100001111": 20, "0000111100011011": 20, "0000111100011101": 20, "0000111100101011": 20, "0001": 3, "0001000001010000000000000111": 20, "0001110100001111": 20, "00088962": 16, "0010000000011000000000010110": 20, "0010011100101101": 20, "0010101100001111": 20, "0010101100101101": 20, "001011": [0, 14], "0010110100100111": 20, "0010110100101011": 20, "001101": [0, 14], "001110": [0, 14], "0014334855507404987": 18, "0016719665060125194": 18, "0033363610926438973": 18, "0035195360534473106": 18, "005e": 15, "01": [15, 18], "0100000110100100001111": 20, "010011": [0, 14], "0101": 0, "0101000001100000011111": 20, "010101": [0, 14], "010110": [0, 14], "0110": 0, "02": [15, 18], "02122442107773": 18, "02242": 2, "02459434j": 14, "02625": 2, "02998708j": 14, "03": 15, "030e": 18, "03101213j": 14, "03525116j": 14, "03668541730983654": 23, "04": [15, 18], "04758323886583945": 18, "05": [0, 2, 3, 4, 18], "05395": 4, "06": 18, "0609050": 5, "0625": [0, 16], "06273307": 14, "06551571": 14, "06677383j": 14, "066e": 15, "06844774j": 14, "07": [6, 18], "08": [0, 2, 3, 4], "08340145j": 16, "08957": 2, "09723851": 14, "0b001011": 0, "0b010101": 0, "0b010110": 0, "0b100101": 0, "0b100110": 0, "0j": 16, "0x7f088994d7b0": 19, "0x7f088994e170": 19, "0x7f088a23b4f0": 19, "0x7f088a23b6a0": 19, "0x7f088a323310": 19, "0x7f088a3233a0": 19, "0x7f088a4df880": 19, "0x7f088a5df7f0": 19, "1": [0, 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "10": [13, 18, 19, 20, 23], "100": 15, "1000": 3, "1000000101100000111011": 20, "100011": [0, 14], "100101": [0, 14], "100110": [0, 14], "101": 20, "1024": 4, "103e": 15, "104": [15, 21], "105e": 18, "10774168466442": 20, "108": [20, 23], "10_000": 20, "11": [0, 13, 19, 20, 23], "1102529j": 14, "11157654": 14, "112": 15, "12": [2, 13, 15, 16, 18, 23], "1207": 0, "12204343": 14, "1234": [9, 13, 14, 15, 19, 21], "12345": 20, "125": [0, 16], "1278053627110067": 20, "1284": [15, 18], "12j": 16, "13": [0, 13, 18, 23], "13113848": 14, "132e": 18, "133": 20, "13327423j": 14, "13957088j": 14, "14": [13, 20], "15": [13, 15], "152e": 18, "1561685j": 14, "15624569": 14, "15828306": 14, "15x15": 15, "16": [13, 20], "17": 13, "1711": [2, 4], "17181289596": 21, "17276745j": 14, "17558331": 14, "18": 13, "180": 15, "18007105": 14, "1808": 2, "18j": 16, "19": 0, "1e": [0, 2, 3, 4, 6, 15, 23], "1j": [0, 9, 16, 23], "2": [0, 1, 2, 4, 5, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "207e": 18, "20835741": 14, "20881506": 14, "21": 0, "210": 20, "2104": 2, "2190712273": 9, "21928194": 14, "21984743e": 16, "22392824": 14, "23": 15, "23550198": 14, "23611476": 14, "24": [13, 19], "25": [0, 16], "25j": [0, 16], "26": 23, "26121865": 14, "279e": 18, "287e": 18, "29821173j": 14, "2d": 0, "2j": [0, 2, 16], "2n": 14, "3": [0, 2, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "30052742j": 14, "31980058j": 14, "31g": [20, 21], "32": [13, 19], "329": 18, "332e": 18, "33731417j": 14, "339": 18, "3484557066644": 20, "35": [0, 23], "36730125j": 14, "3714141": 14, "38435478j": 14, "39": [13, 14, 15, 16, 18, 19, 20], "39075171": 14, "395e": 18, "3j": 16, "4": [0, 2, 8, 9, 13, 14, 15, 16, 18, 19, 20, 21, 23], "416e": 18, "417e": 15, "421e": 18, "431e": 15, "4390672": 14, "45619739132886": 20, "46": 18, "464957764796": 23, "46x46": 18, "47": 20, "475e": 18, "478": 15, "48": [13, 20], "484e": 18, "49094286j": 14, "4j": 16, "5": [0, 3, 9, 13, 14, 15, 16, 18, 19, 20, 23], "51253171j": 14, "520e": 18, "523": 18, "55717072551558": 9, "56": [13, 19, 20], "560e": 18, "561e": 18, "5626": 18, "57": 20, "58888": 22, "5j": [0, 16], "6": [0, 9, 13, 14, 15, 16, 19, 20, 21, 23], "603e": 15, "6083": 0, "610e": 18, "627953183069461e": 18, "6332495815006": 15, "64": 14, "65": 20, "66": 20, "667e": 18, "67794403659724": 15, "6787887956297": 15, "6787887956314": 15, "68381564539439": 15, "6g": [0, 15, 18, 23], "6j": 16, "7": [0, 9, 13, 14, 15, 16, 18, 19, 23], "70": 20, "72": 18, "7288249991515": 15, "72x72": 18, "73105542j": 14, "748e": 15, "75": [15, 20], "751e": 15, "77": 18, "780e": 18, "8": [0, 13, 15, 16, 18, 19, 20, 23], "823970652155262e": 18, "8266321248744": 18, "8266321248745": 18, "835236570774": 20, "87160024816274": 18, "87363082741813": 18, "87363426645267": 18, "87363430913514": 18, "8736343245343": 18, "87387392584009": 18, "87421536374028": 18, "8742165643863": 18, "9": [13, 14, 16, 19, 23], "9289": 18, "9402435115158925": 23, "949": 18, "958": 15, "9630419334854": 20, "99": 9, "9924": 20, "9930289110134369": 18, "9931197219175946": 18, "9931294330101719": 18, "9985212854200891": 23, "9985212854203092": 23, "9991": 20, "9996731164189154": 23, "A": [0, 1, 2, 3, 4, 5, 6, 8, 12, 13, 14, 16, 22, 23], "AND": 15, "As": [0, 11, 13, 14, 18, 19, 23], "By": 21, "For": [0, 3, 4, 8, 9, 11, 14, 15, 16, 22, 23], "If": [0, 1, 2, 3, 4, 5, 6, 13, 16], "In": [0, 8, 9, 11, 13, 14, 15, 16, 18, 19, 20, 23], "It": [0, 2, 3, 4, 13, 14, 16, 18, 20, 22], "Its": [3, 4], "NO": [15, 18], "No": 2, "Of": 11, "On": [14, 22], "One": [0, 23], "Such": 16, "That": [0, 3, 12, 16], "The": [0, 1, 2, 3, 4, 5, 6, 8, 9, 10, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "Their": 19, "Then": [0, 13], "There": 13, "These": [0, 11, 16, 19], "To": [0, 8, 9, 11, 14, 18, 23], "With": [11, 14, 23], "_": [0, 1, 2, 4, 8, 11, 12, 15, 23], "_1": 12, "_2": 12, "__init__": 4, "__init_subclass__": 4, "__new__": 4, "_factr": 18, "_i": [0, 4], "_k": [0, 8, 11], "_nestedsequ": 4, "_supportsarrai": 4, "a_": [0, 4, 8, 9, 12, 16], "a_j": 1, "a_p": 0, "a_q": 0, "ab": [0, 23], "abil": 8, "abl": 22, "about": 21, "abov": [13, 16], "absenc": [0, 1, 4], "absolut": [0, 2, 4, 6], "acceler": 22, "accept": [12, 18], "access": [0, 9, 22], "accommod": 4, "accomod": 8, "accur": 8, "achiev": [2, 23], "across": 22, "act": [0, 2, 4, 9, 13, 15, 16], "action": [0, 1, 12, 16, 22, 23], "activ": [0, 15, 18, 20, 23], "active_spac": [0, 15, 18, 20, 21, 23], "actual": [6, 11], "ad": [0, 13, 18], "add": [13, 18], "addit": [0, 8, 16, 23], "addition": 2, "address": [0, 13], "addresses_to_str": [0, 7, 14], "adjac": 13, "advantag": 18, "after": [3, 18], "al": 2, "algebra": [2, 9, 16], "algorithm": [0, 2, 3, 18, 21], "alia": [0, 2], "align": [0, 11, 12], "all": [0, 1, 2, 3, 4, 6, 11, 13, 16, 20, 22], "alloc": 0, "allow": [0, 2, 11, 13, 18, 22, 23], "along": 0, "alpha": [0, 1, 2, 4, 6, 9, 11, 13, 14, 15, 16, 19, 20], "alpha_alpha_indic": 0, "alpha_and_beta": 0, "alpha_beta_indic": 0, "alpha_i": 0, "alpha_j": 0, "alreadi": [0, 4, 12], "also": [0, 2, 3, 9, 12, 14, 16, 18, 23], "altern": [0, 8], "alwai": [0, 2, 5, 12, 14, 23], "amen": 13, "amplitud": [0, 2, 5, 18, 20], "an": [0, 1, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 23], "angl": 0, "ani": [0, 3, 4, 11, 12, 19, 20], "annihil": [0, 16], "anoth": [2, 6], "ansatz": [0, 3, 4, 5, 10, 13, 17, 19, 20, 21], "ansatz_oper": 0, "ansatz_st": 18, "anti": [2, 5], "anticommut": 12, "ao": 0, "ap": 2, "api": [14, 21], "appear": [0, 2, 13, 16, 20], "append": [0, 6, 13, 18, 19, 20], "appli": [0, 1, 2, 3, 4, 9, 11, 12, 13, 14, 18, 19, 20, 21, 23], "applic": 12, "apply_": 14, "apply_diag_coulomb_evolut": [0, 7, 8, 23], "apply_fsim_g": [0, 7], "apply_fswap_g": [0, 7], "apply_givens_rot": [0, 7], "apply_hop_g": [0, 7], "apply_matrix_to_slic": [2, 7], "apply_num_interact": [0, 7], "apply_num_num_interact": [0, 7], "apply_num_op_prod_interact": [0, 7], "apply_num_op_sum_evolut": [0, 7, 12, 23], "apply_on_site_interact": [0, 7, 14], "apply_orbital_rot": [0, 7, 12, 14, 21], "apply_quad_ham_evolut": 12, "apply_tunneling_interact": [0, 7, 14], "apply_unitari": [0, 7, 18], "appropri": [0, 11], "approx": 8, "approx_eq": [0, 7], "approxim": [0, 2, 3, 8, 18, 23], "apt": 22, "ar": [0, 1, 2, 4, 5, 6, 8, 9, 11, 12, 13, 14, 16, 19, 20, 22], "arbitrari": [4, 20], "arch": 22, "arg": [0, 4], "argument": [0, 2, 3, 8, 9, 12, 14, 23], "aris": 8, "arithmet": 16, "around": 23, "arrai": [0, 1, 2, 4, 6, 9, 11, 14, 16], "arxiv": [0, 2, 4, 5], "ascend": 20, "assembl": 2, "assert": 14, "assert_allclose_up_to_global_phas": [6, 7], "assertionerror": 6, "associ": [0, 3, 14, 16, 18], "assum": [0, 4, 14], "asterisk": 0, "asymmetr": 8, "atol": [0, 2, 4, 6], "atom": [0, 15, 18, 20, 21, 23], "attempt": 2, "attribut": [0, 3, 9, 15, 18], "author": 21, "auto": 0, "avail": [9, 19, 22], "avoid": [0, 9, 16], "awar": 16, "ax": [0, 2], "axi": [0, 2], "b": [0, 2, 3, 6, 12, 15, 18], "back": 4, "backend": [13, 19], "backflow": 3, "background": 23, "balanc": [0, 4, 5, 18, 20], "barrier": 20, "base": [0, 2, 4], "basepass": 4, "basesamplerv2": 4, "basi": [0, 2, 4, 12, 15, 18, 20, 21, 23], "basic": [9, 13], "basis_g": [13, 19], "bear": 23, "becaus": [0, 2, 8, 9, 13, 15, 16, 18], "been": [0, 8], "befor": [0, 13, 16, 22, 23], "begin": [0, 2, 11, 12, 14, 20, 23], "behavior": [2, 4, 5, 19], "being": [2, 16, 18], "below": [0, 18, 23], "benchmark": 0, "beta": [0, 1, 2, 4, 6, 9, 11, 13, 14, 15, 16, 19, 20], "beta_i": 0, "beta_j": 0, "better": 8, "between": [0, 1, 2, 3, 11, 13], "bfg": [0, 2, 3, 15, 18], "bibtex": 21, "bit": [0, 13, 14], "bit_arrai": 0, "bitstr": [0, 14, 20], "bitstring_typ": [0, 14], "bitstringtyp": [0, 7, 14], "bla": 22, "bloc": 20, "block": 2, "block_diag": [0, 2], "bmod": 0, "bodi": [0, 1, 2, 5, 8, 9, 18, 23], "bond": 15, "bond_angle_deg": 15, "bond_dist": 18, "bool": [0, 1, 2, 3, 4, 5, 6], "both": [0, 1, 2, 4, 11, 15], "bound": [0, 2], "boundari": 0, "box": 13, "bq": 2, "bracket": 0, "braket": 0, "branch": 21, "brickwork": 15, "browser": 22, "buffer": 4, "build": [13, 17, 18, 20, 21, 22], "built": [19, 20, 23], "byte": [0, 4], "bz2": 0, "c": [2, 18], "c2v": 15, "cach": 0, "calcul": [0, 14, 18], "call": [0, 3, 4, 8, 9, 12, 14, 16, 18, 20, 23], "callabl": [3, 18], "callback": [0, 2, 3, 18], "can": [0, 1, 2, 4, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 21, 22, 23], "cannot": 20, "canon": 0, "casci": [15, 18], "case": [0, 6, 13, 15], "categori": 21, "caus": 0, "cc": [18, 20], "ccsd": [0, 18, 20], "ccsd_energi": 0, "ccsd_t1": 0, "ccsd_t2": 0, "cd": 22, "cdot": 2, "cell": [9, 13, 14, 18, 19, 20, 23], "certain": [2, 13], "challeng": 11, "character": 0, "check": [2, 4, 6], "chemcor": 23, "chemic": 0, "chemical_potenti": 0, "chemistri": 21, "choic": [0, 6, 13, 14], "choleski": [0, 2], "choos": [2, 14], "chosen": 0, "ci": [15, 18], "circuit": [0, 4, 8, 13, 14, 17, 21], "circul": 0, "cisd": 0, "cisd_energi": 0, "cisd_vec": 0, "class": [0, 2, 4, 5, 9, 11, 15, 17, 18, 21, 23], "clement": 2, "clone": 22, "close": [11, 18], "cluster": [0, 4, 5, 10, 17, 21], "co": [0, 15], "code": [4, 9, 13, 14, 16, 18, 19, 20, 23], "coeff": [0, 1, 4, 13, 19], "coeffici": [0, 1, 2, 4, 12, 16], "collect": [0, 2, 4, 18], "column": [0, 2, 12, 14], "com": [21, 22], "comb": 4, "combin": [0, 1, 4, 12, 13, 16], "command": 22, "commonli": [8, 20], "commun": [21, 22], "commut": [0, 8], "compact": [8, 23], "compar": [0, 6, 23], "compil": 22, "complet": 0, "complex": [0, 1, 2, 4, 5, 9], "compon": [0, 16, 21], "compos": [4, 22], "compress": [0, 2], "compris": [0, 16], "comput": [0, 2, 4, 9, 12, 18, 21, 23], "concaten": [0, 14], "concret": 9, "condit": 0, "configur": [0, 4, 13, 14, 22], "conflict": 6, "conj": [2, 12, 20], "conjug": 2, "connect": [0, 11, 13], "consecut": [4, 20], "conserv": [0, 5, 16, 21], "conserves_particle_numb": [0, 16], "conserves_spin_z": [0, 16], "consid": [11, 12, 13], "consist": [0, 9, 13], "constant": [0, 5, 8, 9, 11, 13, 19], "constrain": 2, "constraint": [11, 18], "construct": [0, 1, 3, 4, 13, 14, 15, 16, 18, 19, 20, 23], "contain": [0, 2, 3, 13, 16, 20, 21, 22], "contract": [2, 7, 21], "contract_diag_coulomb": [1, 7], "contract_num_op_sum": [1, 7], "contract_one_bodi": [1, 7], "contrast": 14, "control": [3, 13], "conveni": 14, "convent": 0, "converg": [3, 15, 18, 20, 23], "convers": [11, 18], "convert": [0, 1, 4, 14, 16, 18, 20, 21, 23], "coordin": 0, "coov": 20, "copi": [0, 16], "core": 0, "core_energi": 0, "correl": 3, "correspond": [0, 2, 3, 4, 8, 12, 13, 14, 18], "cost": 0, "coulomb": [0, 1, 2, 4, 8, 11, 23], "count": [0, 13, 20], "count_op": [13, 19], "cours": 11, "cp": [13, 19], "cphaseg": 13, "cre": [0, 7], "cre_a": [0, 7, 16], "cre_b": [0, 7, 16], "creat": [0, 4, 13, 14, 16, 19, 20, 21, 23], "creation": [0, 4, 12, 16], "criteria": 16, "current": [0, 2, 18], "d": [2, 22], "d2h": 18, "dag": 4, "dagcircuit": 4, "dagger": [0, 1, 2, 8, 11, 12, 16], "dagger_": [0, 4, 8, 9, 12], "dagger_i": 1, "dagger_p": 0, "dagger_q": 0, "data": [0, 5, 13, 15, 16, 18, 20, 21, 23], "daunt": 8, "de": [0, 7], "decompos": [2, 4, 8, 13, 19], "decomposit": [0, 2, 4, 8, 10, 19, 21, 23], "decreas": [0, 18], "def": [2, 12, 15, 18, 23], "default": [0, 2, 3, 4, 5, 8, 9, 23], "default_rng": [0, 4, 5, 6, 9, 13, 15, 19, 20], "default_shot": [4, 20], "defaultdict": 18, "defin": [0, 2, 13, 15, 18, 20, 23], "definit": [0, 2, 3, 14], "demonstr": [14, 18, 20], "denot": [0, 1, 2, 4, 12], "dens": 15, "densiti": 0, "depend": [0, 2, 3, 22, 23], "deprec": [0, 4, 5], "depth": 11, "deriv": 8, "des_a": [0, 7, 16], "des_b": [0, 7, 16], "descend": [0, 16], "describ": [0, 1, 2, 8, 11, 12, 13, 16, 23], "descript": [0, 4], "design": [0, 2, 12], "desir": [0, 2, 5, 6], "destroi": [0, 16], "detail": [13, 19], "determin": [0, 2, 4, 14], "determinant": 0, "dev": 22, "devel": 22, "develop": [4, 21], "devic": [13, 19], "df_hamiltonian": [13, 19, 23], "df_hamiltonian_alt": 23, "diag": [0, 7], "diag_coulomb_indic": [0, 2], "diag_coulomb_jw": 13, "diag_coulomb_linop": [1, 7], "diag_coulomb_mat": [0, 2, 13, 19, 20, 23], "diag_coulomb_mats_alpha_alpha": 0, "diag_coulomb_mats_alpha_beta": 0, "diagcoulombevolutionjw": [4, 7, 13, 19, 20], "diagcoulombevolutionspinlessjw": [4, 7], "diagon": [0, 1, 2, 4, 8, 11, 23], "diagonal_coulomb_mat": 2, "diagonalcoulombhamiltonian": [0, 7], "dict": [0, 2, 3, 15, 18], "dictionari": [0, 16], "did": 0, "differ": [0, 1, 2, 3, 9, 11, 13, 18, 22, 23], "dim": [0, 5, 7, 14, 16], "dim_a": [0, 14], "dim_b": [0, 14], "dimens": [0, 2, 5, 14], "dimension": [0, 2, 4, 14], "dipol": 0, "dipole_integr": 0, "direct": [0, 23], "directli": [0, 13, 18, 22, 23], "directori": 22, "discuss": [8, 12, 13], "disjoint": 2, "disk": 0, "displai": [13, 16, 20], "distinguish": 14, "distribut": 5, "divid": 8, "divis": [0, 16], "dnf": 22, "do": [8, 13, 16], "doc": [15, 18, 21], "docker": 21, "dockerfil": 22, "docstr": 0, "document": [0, 2], "doe": [0, 4, 16, 20], "don": 11, "dooh": [20, 21, 23], "dot": 0, "doubl": [0, 2, 4, 5, 10, 21, 24], "double_factor": [0, 2, 7], "double_factorized_t2": [2, 7], "double_factorized_t2_alpha_beta": [2, 7], "doublefactorizedhamiltonian": [0, 4, 5, 7, 23], "down": 14, "draw": [13, 19], "drop": [4, 15, 18], "dropneglig": [4, 7], "dtype": [0, 2, 4, 5, 9, 15, 18], "due": 20, "dump": [15, 18], "duplic": 0, "dure": 4, "e": [0, 2, 4, 8, 9, 11, 15, 16, 18, 20], "e_corr": [18, 20], "each": [0, 2, 3, 4, 8, 11, 14, 16, 18, 22, 23], "edg": 0, "effect": [0, 4, 13], "effici": [8, 13, 16], "eig": [9, 16], "eigendecomposit": 12, "eigenvalu": [0, 2, 3, 9], "eigenvector": [0, 2], "eigh": [12, 23], "eigsh": 9, "einsum": 23, "either": [0, 1, 2, 4, 6, 11], "electon": 4, "electron": [0, 1, 4, 5, 9, 13, 14, 15, 19, 20, 23], "element": [0, 1, 2, 4, 20, 23], "ell": 2, "els": [0, 5, 14], "elsewher": 0, "enabl": 2, "encount": 20, "end": [0, 2, 11, 12, 20, 23], "energi": [0, 3, 9, 12, 18, 20, 21, 23], "energy_nuc": [15, 18], "enforc": 0, "enough": 4, "ensur": 9, "entangl": [0, 17, 21], "entir": [2, 8], "entri": [0, 2, 4, 11, 14, 23], "enum": 0, "enumer": [0, 18], "environ": 22, "epsilon": 3, "epsmch": 18, "equal": [0, 2, 6, 13], "equal_nan": 6, "equilibrium": 15, "equival": [0, 4], "err_msg": 6, "error": [0, 2, 4, 6, 23], "especi": 16, "estim": 9, "et": 2, "etc": 0, "ethen": 18, "evalu": [3, 15], "even": 13, "everi": 12, "everywher": 14, "evolut": [0, 4, 9, 23], "evolv": [0, 23], "evolved_vec": 9, "evolved_vec_2": 9, "exact": [2, 8, 9, 23], "exact_st": 23, "exampl": [0, 4, 9, 11, 13, 14, 15, 16, 18, 19, 22], "exce": [2, 15, 23], "except": [0, 2, 3], "excit": 13, "exist": [2, 4], "exp": [0, 2, 4, 6], "expand": 0, "expanded_diag_coulomb_mat": 2, "expanded_orbital_rot": 2, "expans": [2, 3], "expect": [0, 3], "expectation_one_body_pow": [0, 7], "expectation_one_body_product": [0, 7], "expectation_product_st": 0, "expens": [0, 2], "explain": [9, 11, 13, 14, 18, 23], "explan": [0, 19, 21], "explicit": 0, "explicitli": 0, "exploit": 21, "expm": 2, "expm_multipli": [9, 23], "expm_multiply_taylor": [2, 7], "exponenti": [8, 9, 23], "expos": [4, 13], "express": [11, 14, 23], "extend": 4, "extra": 8, "extract": 20, "f": [3, 14, 15, 18, 20, 23], "facilit": 11, "fact": 15, "factor": [0, 2, 4, 5, 10, 21, 24], "failur": 6, "fake_provid": [13, 19], "fals": [0, 1, 2, 4, 5, 15, 16, 18], "far": 16, "fast": 0, "faster": [18, 21], "fault": 11, "fci": [0, 14, 15, 18], "fci_energi": 0, "fci_vec": 0, "fcidump": 0, "fcivec": 0, "fedora": 22, "feenberg": 3, "fermi": 0, "fermi_hubbard_1d": [0, 7], "fermi_hubbard_2d": [0, 7], "fermion": [0, 4, 5, 6, 8, 10, 11, 12, 16, 19, 20, 21], "fermion_oper": [0, 7], "fermionact": [0, 7], "fermionoper": [0, 4, 5, 7, 17, 21], "few": [14, 22], "fewer": [13, 19, 23], "ffsim": [7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19, 22, 23], "ffsim_vec_to_qiskit_vec": [4, 7], "ffsimsampl": [4, 7], "fidel": 23, "field": [0, 2], "fifth": 13, "file": [0, 22], "filter": 0, "final": [0, 3, 4, 5, 13, 19, 23], "final_orbital_rot": 0, "final_st": [18, 23], "final_state_vector": [4, 7], "finish": 23, "finit": 3, "first": [0, 2, 4, 8, 13, 14, 18, 20, 23], "fix": 14, "flag": 0, "float": [0, 2, 3, 4, 5, 6, 9, 12, 23], "float64": [9, 15, 18], "fock": [0, 4, 11, 14, 18, 21, 23], "focu": 9, "follow": [0, 2, 3, 4, 9, 11, 12, 13, 14, 16, 18, 19, 20, 21, 22, 23], "foot": 0, "forg": [0, 17, 21], "form": [0, 1, 2, 4, 8, 9, 11, 12, 16, 20, 23], "format": [0, 4], "formula": [0, 23], "fourth": [8, 13], "frac": [0, 2], "frac12": [0, 8, 9, 11], "frac18": 0, "framework": 22, "from": [0, 2, 4, 5, 6, 8, 11, 12, 13, 14, 15, 16, 18, 19, 21, 23], "from_diag_coulomb_mat": 0, "from_fcidump": 0, "from_fermion_oper": 0, "from_json": 0, "from_mol": 0, "from_molecular_hamiltonian": [0, 23], "from_orbital_rot": 0, "from_paramet": [0, 13, 18], "from_scf": [0, 15, 18, 20, 21, 23], "from_t_amplitud": [0, 18, 20], "frozen": [18, 20], "fsim": 0, "fswap": 0, "ftol": [3, 18], "full": [0, 2, 13, 14, 15], "fulli": 9, "fun": [3, 15, 18], "function": [0, 1, 2, 3, 5, 8, 9, 12, 14, 15, 16, 18, 19, 23], "fundament": 12, "further": [13, 14], "furthermor": [0, 2], "g": [0, 4, 15], "g_": 2, "g_1": 2, "g_i": 3, "g_k": 2, "g_l": 2, "gate": [0, 4, 10, 11, 15, 20, 21], "gener": [0, 3, 4, 5, 6, 8, 13, 14, 15, 19, 20, 21], "generate_norb_nelec": [6, 7], "generate_norb_nelec_spin": [6, 7], "generate_norb_nocc": [6, 7], "generate_norb_spin": [6, 7], "generate_preset_pass_manag": [13, 19], "genericbackendv2": [13, 19], "get": [0, 14, 15, 18, 20, 21, 23], "get_count": 20, "get_hcor": [15, 18], "get_ovlp": [15, 18], "git": 22, "github": [21, 22], "give": [0, 2, 8, 14, 19], "given": [0, 2, 4, 6, 8, 12], "givens_ansatz_op": 4, "givens_ansatz_oper": 4, "givens_decomposit": [2, 7], "givensansatzop": [0, 4, 7], "givensansatzoper": [0, 4, 7], "givensansatzoperatorjw": [4, 7], "givensansatzoperatorspinlessjw": [4, 7], "givensansatzopjw": [4, 7], "givensansatzopspinlessjw": [4, 7], "givensrot": [2, 7], "global": [4, 6], "go": [0, 13, 16], "good": 16, "gradient": [2, 3, 18], "greater": 3, "ground": [9, 18], "gt": [15, 18, 19], "gto": [15, 18, 20, 21, 23], "gtol": 3, "guarante": [4, 19], "guess": [3, 18], "guid": [11, 15, 18, 19, 20, 21], "gzip": 0, "h": [0, 8, 9, 15, 18, 20, 23], "h1_x": 15, "h2_x": 15, "h2_y": 15, "h_": [0, 2, 8, 9], "h_0": [8, 23], "h_k": [8, 23], "ha": [0, 1, 2, 4, 8, 11, 12, 13, 14, 18], "haar": 5, "ham": 14, "hamiltonian": [0, 3, 4, 5, 10, 15, 18, 20, 21, 24], "hand": 14, "handl": [20, 23], "happen": 13, "hardwar": 13, "hartre": [0, 4, 11, 14, 18, 21, 23], "hartree_fock": 0, "hartree_fock_jw": 13, "hartree_fock_st": [0, 7, 9, 14, 18, 21, 23], "hasattr": 18, "hash": 16, "have": [0, 2, 8, 9, 11, 12, 13, 14, 16, 22], "height": 5, "helper": 16, "here": [0, 2, 8, 12, 13, 15, 23], "hermitian": [0, 2, 5, 12], "hess_inv": [15, 18], "hf": [15, 18], "hf_energi": 0, "hf_mo_coeff": 0, "hf_mo_occ": 0, "high": 13, "higher": [0, 8, 23], "ho": 20, "hold": [0, 3], "home": [15, 18, 22], "hop": [0, 15], "hopgateansatzoper": [0, 7, 15], "hot": [0, 2], "how": [0, 8, 9, 11, 12, 13, 14, 21, 23], "howev": [8, 13, 21], "http": [0, 21, 22], "hubbard": 0, "hydroxyl": 20, "hyperparamet": [3, 18], "i": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "idea": 11, "ident": 0, "ignor": [0, 2, 8], "ij": [0, 1, 2, 4, 8, 11, 12], "ijab": 2, "ik": 12, "imag": 22, "implement": [0, 1, 3, 4, 8, 9, 11, 12, 13, 15, 18, 20, 21, 22, 24], "import": [0, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "impos": [11, 18], "improv": [3, 23], "includ": [0, 2, 4, 5, 8, 9, 12, 13, 14, 15, 18, 19, 21, 22], "incorpor": 0, "increas": [0, 14, 23], "increment": 3, "incur": 3, "independ": [0, 1, 4, 15], "index": [0, 2, 11, 14, 16], "indic": [0, 1, 2, 4, 11, 14, 16], "indices_to_str": [0, 7], "individu": [8, 14, 16], "info": 18, "inform": [0, 9, 16, 18, 21, 23], "init_cach": [0, 7], "initi": [0, 3, 4, 5, 6, 9, 11, 13, 18, 19, 20, 23], "initial_st": 23, "initiali": 15, "input": [0, 1, 3, 4, 5, 6, 18, 20], "insert": 13, "instanc": [5, 9, 23], "instead": [0, 2, 4, 5, 18, 23], "instruct": [21, 22], "instructionset": 19, "int": [0, 1, 2, 3, 4, 5, 6, 12, 15, 23], "int32": 0, "integ": [0, 2, 4, 6, 14], "integr": [0, 4], "interact": [0, 1, 2, 4, 11, 13, 18, 20], "interaction_pair": [0, 13, 15, 18, 20], "interfac": [18, 22], "interferomet": 2, "intermedi": 18, "intermediate_result": [3, 18], "intern": 16, "interpret": [0, 11], "introduc": [11, 12, 23], "invers": 4, "involv": [0, 12, 13], "ip": 2, "ipykernel_4340": 9, "is_antihermitian": [2, 7], "is_hermitian": [2, 7], "is_orthogon": [2, 7], "is_real_symmetr": [2, 7], "is_special_orthogon": [2, 7], "is_unitari": [2, 7], "isclos": 0, "isn": 4, "issu": [9, 13], "item": 20, "iter": [0, 3, 4, 6, 18], "itertool": 2, "its": [0, 2, 4, 9, 13, 14, 15, 16, 23], "itself": [0, 14, 16], "j": [0, 1, 2, 4, 8, 11, 12, 14, 15, 16], "jac": [3, 15, 18], "jastrow": [0, 3, 4, 5, 10, 17, 21], "ji": [0, 4, 11, 12], "jk": 12, "job": [4, 20], "jordan": [0, 4], "jordan_wign": [4, 7], "jq": 2, "json": [0, 15, 18], "jupyt": 22, "just": [0, 14, 18, 22, 23], "jwt": 4, "k": [0, 2, 3, 8, 9, 11, 16, 20, 23], "kappa": 0, "kappa_": 0, "keep": [0, 2], "kei": 20, "kij": 23, "know": 15, "known": [0, 8], "kpi": 23, "kqi": 23, "krj": 23, "kron": 0, "ksj": 23, "kwarg": [0, 4], "l": [0, 2, 3, 8, 11, 15, 18, 23], "label": [4, 14], "ladder": [8, 11], "lambda": [0, 4, 20], "lambda_i": [0, 1, 4, 12], "lambda_k": 12, "langl": 0, "larger": [0, 2, 3, 16], "last": [0, 2, 3, 4], "later": [19, 23], "lattic": [0, 11, 13, 18, 20], "layer": [0, 2, 13, 20], "lbfgsinvhessproduct": [15, 18], "ldot": [0, 2, 8, 11, 23], "lead": 0, "least": 2, "left": [0, 4, 12, 14, 16], "len": [15, 18, 23], "length": [0, 4, 5, 14, 15], "leq": [0, 2], "less": [2, 11], "let": [0, 13, 14, 16, 18, 19, 20, 23], "level": 23, "lexicograph": [0, 16], "lib": [15, 18], "libopenbla": 22, "librari": [0, 21], "like": [4, 11, 18, 22], "limit": [0, 2, 11, 13, 15, 18], "linalg": [0, 7, 9, 12, 16, 18, 21, 23], "lindep": 3, "line": [0, 11, 13, 18], "linear": [0, 1, 2, 3, 4, 9, 12, 13, 16], "linear_oper": [0, 7, 9, 16, 18, 21, 23], "linearli": 8, "linearoper": [0, 1, 3, 16, 18, 21, 23], "linop": [9, 16, 21, 23], "linux": 22, "list": [0, 2, 4, 6, 11, 14, 15, 18, 20, 23], "ll": [9, 12, 13, 15, 18, 20, 23], "lm": 16, "load": 0, "local": [10, 17, 21], "localhost": 22, "log": [0, 4], "logarithm": 11, "logic": [12, 15], "longer": 11, "longest": 0, "lookup": 0, "losslessli": 0, "low": [0, 8, 23], "lower": [0, 2], "lowest": [0, 13, 14], "lt": [15, 18, 19], "lu": 2, "lucj": [10, 13, 17, 21], "lup": [2, 7], "lvert": [0, 4, 11, 14], "lzma": 0, "m": [0, 1, 2, 12], "m_": [0, 1, 2], "maco": 22, "made": 23, "magnitud": 0, "mai": [0, 2, 3, 4, 11, 22, 23], "main": [18, 22], "maintain": 8, "make": [11, 13], "manag": [4, 13, 19, 22], "mani": [0, 9, 12, 14, 21], "manual": 23, "many_body_ord": 0, "map": [0, 4, 12, 13, 16], "mapsto": [0, 4, 12], "mat": [0, 1, 2, 4, 12, 14], "mat_aa": 2, "mat_ab": 2, "mat_alpha_beta": 1, "mat_bb": 2, "match": [0, 2], "match_global_phas": [2, 7], "math": [5, 15], "mathbf": [0, 8, 11, 12], "mathcal": [0, 1, 4, 8, 11, 12], "matric": [0, 1, 2, 4, 11, 12, 23], "matrix": [0, 1, 2, 3, 4, 5, 8, 9, 11, 12, 14, 16], "max": [3, 23], "max_error": 23, "max_term_length": 5, "max_vec": [0, 2, 23], "maxfun": 15, "maximum": [0, 2, 3, 5, 23], "maxit": [3, 18], "mcscf": [15, 18], "mea": 20, "meant": [4, 19], "measur": [5, 8, 20], "measure_al": 20, "mention": 8, "merg": [4, 19], "mergeorbitalrot": [4, 7, 13], "messag": [6, 15, 18], "method": [0, 2, 3, 4, 11, 15, 16, 20, 21], "mid": 20, "might": 2, "mind": 23, "minim": [0, 2, 3, 13, 15, 18], "minimize_linear_method": [3, 7, 18], "minimizz": 15, "minimum": 4, "mk": 2, "mkap": 2, "mkbq": 2, "mkip": 2, "mkjq": 2, "mkpq": 2, "mo_coeff": 0, "mo_occ": 0, "mode": 12, "model": 0, "modifi": [0, 2], "modified_choleski": [2, 7], "modul": [0, 14, 15, 19, 20], "mol": [15, 18, 20, 21, 23], "mol_data": [15, 18, 20, 21, 23], "mol_hamiltonian": [9, 15, 18, 20, 23], "mole": [0, 15, 18, 20, 21, 23], "molecul": [0, 18, 21, 23], "molecular": [0, 5, 9, 10, 14, 15, 18, 20, 21, 23], "moleculardata": [0, 7, 15, 18, 20, 21, 23], "molecularhamiltonian": [0, 5, 7, 9, 23], "more": [0, 2, 3, 4, 8, 9, 11, 13, 14, 19, 23], "most": [0, 2, 16, 20], "motiv": 13, "mp2": 0, "mp2_energi": 0, "mp2_t2": 0, "mpl": [13, 19], "msg": [15, 18], "mu": 0, "much": [0, 2, 8, 13, 21], "multipl": [0, 9, 16, 23], "multipli": [0, 16], "multiport": 2, "multirefer": 0, "multireference_st": [0, 7], "multireference_state_prod": [0, 7, 15], "must": [0, 2, 3, 4, 16, 20], "n": [0, 2, 3, 8, 9, 11, 12, 14, 20, 21, 23], "n2": [20, 21, 23], "n_": [0, 1, 4, 8, 11, 12, 14], "n_alpha": [4, 6, 20], "n_beta": [4, 6, 20], "n_frozen": [20, 23], "n_i": 4, "n_j": 4, "n_layer": 15, "n_p": 0, "n_param": [0, 13], "n_qubit": 4, "n_rep": [0, 5, 13, 18, 19, 20], "n_sampl": 0, "n_step": [0, 4, 13, 19, 23], "n_term": 5, "n_vec": 2, "n_x": 0, "n_y": 0, "name": [0, 9, 13, 14, 19, 22], "namedtupl": [0, 2], "nan": 6, "nao_nr": [15, 18, 20, 21, 23], "nativ": 21, "navig": 22, "ndarrai": [0, 1, 2, 3, 4, 5, 6, 12, 18, 23], "nearest": 0, "nearest_neighbor_interact": 0, "need": [0, 4, 9, 11, 13, 20, 22, 23], "neg": [0, 4], "neglig": 4, "neighbor": [0, 13], "nelec": [0, 1, 4, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "nelectron": 18, "neq": 0, "nest": 2, "network": 11, "new": [0, 4, 12, 16], "newli": 0, "next": [13, 15, 23], "nfev": [3, 15, 18], "nit": [15, 18], "nitrogen": [20, 23], "njev": [15, 18], "nlinop": [3, 18], "nn": 0, "nocc": [0, 5, 6], "nocc_a": 2, "nocc_b": 2, "noisi": 11, "non": [4, 11], "none": [0, 1, 2, 3, 4, 5, 6], "nonzero": [0, 2, 11], "norb": [0, 1, 2, 4, 5, 6, 9, 12, 13, 14, 15, 16, 18, 19, 20, 21, 23], "norb_i": 0, "norb_rang": 6, "norb_x": 0, "norm": [0, 18], "normal": [0, 15, 16], "normal_ord": [0, 16], "note": [0, 2, 3, 13, 14, 16, 19, 21], "notebook": 22, "noth": 4, "notic": 18, "notimplementederror": 4, "now": [9, 13, 15, 18, 20, 23], "np": [0, 2, 4, 5, 6, 9, 12, 13, 15, 18, 19, 20, 21, 23], "num_num_ansatz_op": 4, "num_op_sum_linop": [1, 7], "number": [0, 1, 2, 3, 4, 5, 6, 8, 9, 12, 14, 15, 16, 18, 21, 23], "number_oper": [0, 7], "numer": [0, 2, 4, 16], "numnumansatzopspinbalanc": [0, 4, 7], "numnumansatzopspinbalancedjw": [4, 7], "numopsumevolutionjw": [4, 7, 13, 19], "numopsumevolutionspinlessjw": [4, 7], "numpi": [0, 1, 2, 4, 6, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 23], "o": [0, 15, 20], "o_1": 0, "o_2": 0, "o_k": 0, "obj": 0, "object": [0, 2, 3, 4, 9, 16, 18, 20], "obtain": [0, 8, 9, 12, 13, 18, 23], "occ_a": 6, "occ_b": 6, "occup": [0, 6, 8, 12, 14], "occupi": [0, 4, 5, 6, 13, 14], "occupied_orbit": [0, 4, 13, 19, 20], "often": [8, 11, 18], "onc": [12, 13, 22], "one": [0, 1, 2, 4, 5, 8, 9, 13, 14, 18, 20, 22, 23], "one_body_basis_chang": 23, "one_body_energi": 23, "one_body_integr": 0, "one_body_linop": [1, 7], "one_body_squar": 0, "one_body_tensor": [0, 9, 23], "one_hot": [0, 2, 7], "one_rdm": 0, "ones": 9, "onli": [0, 2, 4, 8, 11, 12, 13, 20, 22], "onsit": 0, "onto": [13, 16], "op": [0, 4, 16], "op1": [0, 16], "op2": [0, 16], "op3": 16, "op4": 16, "opaqu": 13, "open": [0, 11], "openbla": 22, "oper": [0, 1, 2, 3, 4, 5, 8, 11, 12, 16, 18, 22, 23], "oppos": 13, "opposit": [18, 20], "optim": [0, 2, 4, 7, 11, 13, 19, 21], "optimization_level": [13, 19], "optimize_kwarg": 3, "optimize_regular": 3, "optimize_vari": 3, "optimizeresult": [3, 18], "option": [0, 1, 2, 3, 4, 9, 15, 18, 22], "orb": [0, 16], "orbit": [0, 1, 2, 4, 5, 6, 8, 9, 10, 11, 14, 15, 16, 18, 20, 21, 23], "orbital_rot": [0, 1, 2, 4, 12, 13, 14, 19, 20, 21, 23], "orbital_rotation_a": 2, "orbital_rotation_b": 2, "orbital_symmetri": 0, "orbitalrotationjw": [4, 7, 13, 19, 20], "orbitalrotationspinlessjw": [4, 7], "order": [0, 1, 2, 4, 8, 9, 13, 14, 16, 19, 20, 23], "ordereddict": [13, 19], "org": 0, "origin": [0, 2, 11, 13, 23], "orthogon": [2, 5], "other": [0, 4, 11, 14, 18, 19, 20], "otherwis": 0, "our": [15, 18, 20, 23], "out": [2, 23], "output": [0, 3, 4, 13, 18, 20], "over": 0, "overrid": [0, 2], "overridden": 4, "overwritten": [0, 15, 18], "own": 4, "p": [0, 2, 8, 9, 11, 13, 18, 19, 20], "packag": [15, 18, 22], "pacman": 22, "pad": 0, "page": [8, 9, 11, 12, 13, 14], "pair": [0, 1, 2, 4, 6, 11, 13, 14], "pairs_aa": [13, 18, 20], "pairs_ab": [13, 18, 20], "pairs_bb": 20, "paper": 11, "parallel": [2, 11, 13], "param": 0, "paramet": [0, 1, 2, 3, 4, 5, 6, 11, 15, 18], "parameter_valu": 4, "params_to_vec": [3, 18], "pars": [15, 18], "part": [0, 5, 8, 12, 14, 15], "particl": [0, 5, 6, 12, 16, 21], "pass": [0, 1, 2, 4, 9, 12, 13, 14, 15, 16, 18, 19], "pass_manag": [13, 19], "passmanag": [4, 13], "path": 0, "pathlik": 0, "pattern": [13, 15], "pauli": 0, "per": 23, "perform": [0, 2, 3, 8, 9, 12, 13, 20, 23], "period": 0, "permut": 2, "persist": 22, "ph": 5, "phase": [0, 2, 4, 6, 13], "phase_angl": 0, "phaseg": 13, "phi": [0, 2, 6], "phi_0": 11, "pi": [0, 15], "piec": [9, 16], "pip": 21, "pipelin": 13, "pivot": 2, "pk": 2, "place": [0, 2, 11, 13, 16, 22], "plain": 14, "pmatrix": [0, 2], "point": 0, "polar": 0, "posit": [2, 3, 14], "possibl": [0, 2, 6, 20, 21], "possibli": [0, 18], "potenti": 0, "power": 0, "pq": [0, 2, 8, 9], "pqr": [0, 2, 8, 9, 23], "practic": 8, "pre": [11, 19], "pre_init": [4, 7, 13, 19], "pre_init_pass": [4, 7, 19], "precis": 6, "prepar": [0, 4, 20], "preparehartreefockjw": [4, 7, 13, 19, 20], "preparehartreefockspinlessjw": [4, 7, 20], "prepareslaterdeterminantjw": [4, 7, 13, 19, 20], "prepareslaterdeterminantspinlessjw": [4, 7, 20], "present": 3, "preserv": [16, 20], "preset_passmanag": [13, 19], "previou": [18, 20], "previous": [8, 13, 14, 18], "primit": [4, 17, 21], "primitivejob": 4, "primitiveresult": 4, "print": [0, 6, 13, 14, 15, 16, 18, 20, 21, 23], "probabl": 0, "problem": 3, "process": 0, "processor": 11, "prod": 15, "prod_": [0, 4, 11], "prod_k": 8, "prod_state_sum": 0, "produc": [0, 13], "product": [0, 2, 8, 14, 15, 16], "productstatesum": [0, 7], "programmat": 16, "properti": [0, 2, 12], "proport": [0, 8], "protocol": 0, "provid": [9, 13, 19, 22], "pseudorandom": [0, 4, 5, 6], "psi": [0, 11], "pub": [4, 20], "pub_result": 20, "put": 15, "py": [9, 15, 18], "pypi": 22, "pyscf": [0, 4, 14, 15, 18, 20, 21, 23], "python3": [15, 18], "q": [0, 8, 9, 13, 19], "qdrift": 0, "qi": 0, "qiskit": [7, 13, 17, 21, 22], "qiskit_vec_to_ffsim_vec": [4, 7], "qk": 2, "quadrat": [8, 10, 21, 23], "qualnam": 0, "quantifi": 2, "quantiti": 0, "quantum": [0, 4, 8, 11, 13, 14, 17, 20, 21], "quantumcircuit": [4, 13, 19, 20], "quantumregist": [13, 19, 20], "qubit": [0, 4, 10, 11, 15, 19, 20, 21], "r": [0, 2, 8, 9], "radic": 20, "radius_1": 15, "radius_2": 15, "rais": [0, 2, 4, 6], "random": [0, 4, 6, 7, 9, 13, 14, 15, 16, 19, 20, 21], "random_antihermitian": [5, 7], "random_double_factorized_hamiltonian": [5, 7, 13, 19], "random_fermion_hamiltonian": [5, 7], "random_fermion_oper": [5, 7], "random_hermitian": [5, 7], "random_molecular_hamiltonian": [5, 7], "random_nelec": [6, 7], "random_occupied_orbit": [6, 7], "random_orthogon": [5, 7], "random_real_symmetric_matrix": [5, 7, 9, 13, 19, 20], "random_special_orthogon": [5, 7], "random_state_vector": [5, 7, 16], "random_statevector": [5, 7], "random_t2_amplitud": [5, 7], "random_two_body_tensor": [5, 7, 9], "random_ucj_op_spin_balanc": [5, 7, 13, 19], "random_ucj_op_spin_unbalanc": [5, 7, 19], "random_ucj_op_spinless": [5, 7], "random_ucj_oper": [5, 7], "random_unitari": [5, 7, 13, 14, 19, 20, 21], "rang": [0, 2, 6, 13, 14, 15, 18, 20, 21, 23], "rangl": [0, 4, 11, 14], "rank": [0, 2, 5, 8, 13], "rather": [0, 12, 14], "rccsd": 20, "rdm": [0, 7], "rdm1": 0, "rdm2": 0, "rdm3": 0, "rdm4": 0, "reach": 18, "read": 0, "real": [0, 1, 2, 3, 4, 5, 6, 8, 9, 11, 12, 18, 21], "realucjoper": [0, 7], "reason": [4, 12], "recal": 13, "recommend": [4, 13, 16, 19, 21], "reconstruct": [0, 2, 23], "reconstruct_t2_alpha_beta": 2, "recover": 0, "reduc": [0, 2, 13], "reduced_matrix": [2, 7], "reduced_matrix_product_st": 0, "reduct": 18, "redund": 11, "refer": [0, 2, 3, 4, 5, 6, 11, 12, 14, 18, 21], "reference_occup": [0, 15], "reference_occupations_spati": 15, "reference_st": 18, "regress": 0, "regular": [3, 18], "rel": [0, 2, 4, 6, 18], "rel_reduction_of_f_": 18, "relat": 12, "releas": 21, "reorder": [0, 8], "rep": 13, "repeat": 15, "repeatedli": 12, "repetit": [0, 5, 11, 13, 18], "repositori": 22, "repr": 16, "repres": [0, 2, 3, 4, 6, 9, 11, 14, 16, 18, 19], "represent": [0, 1, 2, 4, 5, 10, 14, 16, 21, 23], "reproduc": 23, "requir": [0, 9, 11, 13, 14, 22], "reshap": 14, "respect": [0, 2, 3, 23], "rest": [0, 13], "restrict": [0, 13, 18], "result": [0, 1, 2, 3, 4, 5, 8, 9, 11, 13, 15, 18, 19, 20, 23], "retain": [0, 13], "retriev": 20, "return": [0, 1, 2, 3, 4, 5, 6, 12, 15, 16, 18, 23], "return_lower_rank": 0, "revers": 20, "rewrit": 0, "rewritten": 12, "rhf": [0, 15, 18, 20, 21, 23], "right": [0, 4, 12, 14, 16], "ring": 0, "rise": [2, 8], "rng": [9, 13, 15, 19, 20], "rohf": 20, "root": 0, "rotat": [0, 1, 2, 4, 5, 8, 10, 11, 14, 21, 23], "rotated_vec": 14, "routin": [2, 9, 16], "row": [0, 2, 14], "rtol": [0, 2, 4, 6], "rtype": [0, 2, 4], "run": [0, 4, 13, 15, 18, 19, 20, 21, 22, 23], "run_ccsd": 0, "run_cisd": 0, "run_fci": [0, 15, 18], "run_mp2": 0, "run_sci": 0, "rung": 11, "runner": [15, 18], "rust": 22, "rvert": 0, "s_": [0, 14], "s_a": 0, "s_b": 0, "sa": 9, "same": [0, 9, 11, 12, 13, 14, 15, 18, 20], "sampl": [0, 4, 5, 6, 9], "sample_slater_determin": [0, 7], "sample_state_vector": [0, 7], "sampler": [0, 4, 17, 21], "samplerpubresult": 4, "sandwich": 13, "satisfi": [0, 12, 16, 20, 22], "save": [0, 18, 22], "scalar": [0, 16], "scale": [8, 13, 15, 19], "scf": [0, 15, 18, 20, 21, 23], "scf_func": 0, "scheme": 8, "sci": 0, "sci_energi": 0, "sci_vec": 0, "scipi": [0, 2, 3, 15, 16, 18, 21, 23], "search": 14, "second": [0, 2, 4, 8], "section": [8, 19], "sector": [0, 1, 2, 4, 15], "see": [0, 2, 4, 11, 13, 14, 19, 22, 23], "seed": [0, 4, 5, 6, 9, 13, 14, 19, 20, 21], "seen": 20, "select": 3, "sens": [13, 23], "separ": [0, 11, 14], "sequenc": [0, 2, 4, 13], "seri": 2, "serial": 0, "serializ": [15, 18], "set": [0, 1, 2, 4, 5, 8, 11, 12, 13, 19, 23], "setup": 11, "sever": [9, 13], "shape": [0, 2, 5, 11, 23], "share": 11, "shell": [11, 18], "shot": [0, 4, 20], "should": [0, 1, 2, 4, 5, 6, 9, 12, 22], "show": [13, 15, 16, 18, 19, 20], "shown": 16, "side": 0, "sigma": [0, 1, 4, 8, 9, 11, 12], "sign": 0, "signatur": 3, "signific": 23, "significantli": 13, "similar": 18, "simpl": [20, 22], "simpler": 0, "simpli": [4, 13, 14], "simplist": 23, "simul": [0, 8, 11, 12, 14, 17, 21, 24], "simulate_qdrift_double_factor": [0, 7], "simulate_trotter_diag_coulomb_split_op": [0, 7], "simulate_trotter_double_factor": [0, 7, 8, 23], "simulate_trotter_step_double_factor": 23, "simulatetrotterdoublefactorizedjw": [4, 7, 13, 19], "sin": [0, 15], "sinc": [0, 2, 11, 12, 15, 18], "singl": [0, 1, 4, 6, 8, 13, 23], "singlefactorizedhamiltonian": [0, 7], "singular": [0, 2], "site": [0, 15, 18], "size": [0, 3, 15], "slater": [0, 4], "slater_determin": [0, 7], "slater_determinant_rdm": [0, 7], "slice": 2, "small": 2, "smaller": [0, 2, 8, 16, 23], "so": [0, 2, 6, 8, 11, 12, 13, 15, 16, 22, 23], "softwar": [0, 21], "solv": 3, "some": [0, 2, 6, 9, 13, 14, 16, 18, 20], "sometim": [0, 14], "sort": 20, "sourc": [0, 1, 2, 3, 4, 5, 6, 21], "space": [0, 9, 14, 15, 18, 20, 23], "span": [0, 2], "spars": [9, 16, 23], "sparsepauliop": 4, "sparsiti": 11, "spatial": [0, 1, 4, 5, 6, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 23], "speci": [4, 6], "special": [2, 5, 11, 13, 21], "specif": 14, "specifi": [0, 1, 2, 3, 4, 5, 6, 9, 11, 13, 15, 23], "spectral": 0, "spin": [0, 1, 2, 4, 5, 6, 7, 12, 13, 14, 15, 16, 18, 20, 21], "spin_squar": [0, 7], "spin_sum": 0, "spinless": [0, 4, 5, 6], "split": [0, 23], "squar": [0, 2, 11, 13, 18, 20], "stack": 0, "stage": [4, 13, 19], "standard": 18, "standard_norm": [9, 13, 19], "star": 2, "start": 0, "state": [0, 1, 3, 4, 5, 9, 10, 11, 12, 13, 18, 20, 21, 23], "statevector": [0, 4, 7], "static": [0, 4], "statist": 20, "statu": [15, 18], "step": [0, 4, 8, 12, 15, 19, 23], "step_tim": 23, "still": [0, 8], "sto": [0, 15, 18, 23], "stop": [3, 15, 18], "store": [0, 2, 4, 6, 9, 11, 13, 18, 19, 23], "store_cisd_vec": 0, "store_fci_vec": 0, "store_sci_vec": 0, "store_t1": 0, "store_t2": 0, "str": [0, 2, 4, 6], "straightforward": 2, "strategi": 0, "strength": 0, "strictli": 3, "string": [0, 14, 16], "strings_a": 0, "strings_b": 0, "strings_to_address": [0, 7], "strings_to_indic": [0, 7], "structur": [0, 8], "sub": 0, "subclass": 4, "subdirectori": 22, "submit": 20, "subroutin": 12, "subspac": [0, 2, 16], "substitut": 0, "subsystem": [14, 22], "subtract": [0, 16], "success": [15, 18], "sudo": 22, "suffix": 15, "suggest": 19, "sum": [0, 4, 8, 23], "sum_": [0, 1, 2, 4, 8, 9, 11, 12, 23], "sum_j": 12, "sum_k": [8, 12], "sum_p": 0, "sum_t": 0, "summat": 0, "support": [0, 2, 9, 14, 16, 20, 22], "supportsapplyunitari": [0, 7], "supportsapproximateequ": [0, 7], "supportsdiagon": [0, 7], "supportsfermionoper": [0, 7], "supportslinearoper": [0, 7], "supportstrac": [0, 7], "suzuki": [0, 23], "swap": [0, 11, 13], "symmetr": [0, 2, 4, 5, 8, 11], "symmetri": [0, 12, 15, 18, 20, 21, 23], "system": [0, 4, 6, 12, 14, 22], "t": [0, 2, 4, 8, 11, 12, 20, 21], "t1": 0, "t1a": 0, "t1b": 0, "t2": [0, 2, 5, 18, 20], "t2_amplitud": 2, "t2aa": 0, "t2ab": 0, "t2bb": 0, "t_": 2, "tabl": [0, 16], "take": [0, 3, 18, 19], "taken": 11, "target": [2, 13], "target_orb": 0, "tau": [0, 1, 4, 8, 9, 11], "taylor": 2, "tensor": [0, 1, 2, 5, 8, 9, 18, 23], "term": [0, 2, 5, 8, 11, 16, 23], "test": [7, 21, 23], "text": [0, 8, 9], "th": [2, 12], "than": [0, 4, 12, 13, 14, 18, 21], "thei": [0, 9, 11, 12, 16], "them": [11, 13, 14], "therefor": [0, 2, 11], "theta": [0, 15], "thi": [0, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 18, 19, 20, 21, 22, 23], "think": 2, "third": [0, 2], "those": [3, 18], "though": 13, "three": [0, 1, 4, 9, 16], "threshold": [0, 2, 3], "thu": 8, "time": [0, 2, 3, 4, 9, 13, 14, 19, 20, 23], "titl": 21, "tmp": [9, 15, 18], "tmpjm80hdau": 18, "tmpx8kyiqnb": 15, "to_diag_coulomb_mat": 0, "to_fcidump": 0, "to_json": 0, "to_molecular_hamiltonian": 0, "to_number_represent": 0, "to_orbital_rot": 0, "to_paramet": [0, 18], "to_t_amplitud": 0, "to_z_represent": 0, "tol": [0, 2, 23], "toler": [0, 2, 4, 6, 11, 23], "too": 2, "top": 20, "topologi": [11, 13, 18], "toru": 0, "total": [0, 4, 8, 15, 18, 23], "tox": [15, 18], "trace": [0, 7, 9, 23], "tracea": [9, 23], "trajectori": 0, "transform": [0, 1, 4], "transformationpass": 4, "transpil": [4, 13, 17, 21], "transpiled_opt": 13, "treat": 0, "triangl": 11, "trianglular": [0, 2], "triangular": [0, 2, 4], "triplet": 6, "trotter": [0, 4, 21, 24], "true": [0, 2, 3, 4, 6, 16, 18, 20], "truncat": 8, "try": 23, "tunnel": 0, "tupl": [0, 1, 2, 4, 6, 12, 15, 16, 23], "tutori": [21, 23], "twice": [0, 15, 19], "two": [0, 2, 5, 8, 9, 11, 13, 14, 15, 18, 22, 23], "two_body_integr": 0, "two_body_tensor": [0, 2, 9, 23], "type": [0, 1, 2, 3, 4, 5, 6, 20, 22], "typeerror": 0, "typic": 0, "u": [0, 1, 2, 4, 8, 11, 12], "u_": 4, "u_k": 0, "ubuntu": 22, "uccsd": 20, "ucj": [0, 4, 5], "ucj_balanced_jw": 13, "ucj_op": [4, 13, 19, 20], "ucj_oper": 4, "ucjoper": [0, 4, 5, 7], "ucjoperatorjw": [4, 7], "ucjopspinbalanc": [0, 4, 5, 7, 11, 13, 18, 20], "ucjopspinbalancedjw": [4, 7, 13, 19, 20], "ucjopspinless": [0, 4, 5, 7], "ucjopspinlessjw": [4, 7], "ucjopspinunbalanc": [0, 4, 5, 7, 11, 20], "ucjopspinunbalancedjw": [4, 7, 13, 19, 20], "uhf": 20, "unbalanc": [0, 4, 5, 20], "uncorrel": 0, "under": [0, 4], "underli": 4, "unifi": 20, "uniform": [0, 5], "unimpl": 4, "union": [2, 4], "unit": 2, "unitari": [0, 1, 2, 4, 5, 8, 10, 12, 14, 17, 21], "univers": 2, "unlik": 0, "unord": 0, "untouch": 0, "up": [0, 2, 6, 8, 14, 22], "updat": [0, 8], "upon": 16, "upper": [0, 2, 4, 11], "url": 21, "us": [0, 1, 2, 3, 4, 5, 8, 9, 11, 12, 13, 14, 15, 17, 18, 19, 21, 23], "usag": [0, 2, 16, 19], "user": 22, "userwarn": [9, 15, 18], "usual": 0, "util": [2, 5, 6, 8], "v": [0, 20], "v_": 0, "v_i": 2, "v_j": 2, "vacuum": 4, "valid": [0, 4, 5, 6], "valu": [0, 1, 2, 3, 4, 6, 9, 11, 18, 19, 23], "valueerror": [0, 2, 4], "vari": [0, 4], "variabl": [14, 23], "variant": [11, 13, 18], "variat": [0, 3, 11, 18], "variation": 18, "varphi": 0, "vdot": [18, 21, 23], "ve": 23, "vec": [0, 1, 2, 4, 9, 12, 14, 16, 21, 23], "vec_a": 0, "vec_b": 0, "vector": [0, 1, 2, 3, 4, 5, 9, 10, 11, 12, 15, 16, 18, 21], "verbos": 6, "verifi": 2, "version": 4, "vertic": 0, "via": [0, 23], "view": [0, 16], "volum": 22, "w": 0, "w_k": 0, "wa": [0, 3, 4, 11], "wai": 11, "want": 13, "warn": [9, 15, 18, 20], "water": 15, "wavefunct": [3, 18], "we": [0, 2, 8, 9, 11, 12, 13, 14, 15, 16, 18, 19, 20, 21, 22, 23], "web": 22, "weight": 14, "well": [3, 14, 21, 22, 23], "when": [0, 3, 4, 9, 11, 13, 14, 16, 19, 21], "whenev": 0, "where": [0, 1, 2, 3, 4, 8, 11, 12, 14, 22, 23], "whether": [0, 1, 2, 3, 4, 5, 16], "which": [0, 2, 4, 5, 8, 9, 11, 12, 13, 14, 15, 16, 22, 23], "while": [8, 11], "whose": [0, 2, 14], "width": 5, "wigner": [0, 4], "william": 2, "window": [21, 22], "wise": 2, "with_final_orbital_rot": [0, 5], "with_phase_angl": 0, "with_phi": 0, "within": [0, 2, 13, 16, 18, 21], "without": [11, 13, 18], "won": 21, "word": [0, 11, 20], "work": [9, 13, 15, 18, 19, 21, 22], "workflow": 20, "would": [13, 14], "wrapper": 23, "write": 23, "written": 8, "wrote": 23, "wsl": 22, "x": [0, 3, 4, 13, 15, 18, 19, 20], "x0": [3, 15, 18], "xx_plus_yi": [13, 19], "xxplusyyg": [13, 19], "y": 0, "yaml": 22, "yet": [9, 18], "yield": [0, 2, 4, 8, 11, 15, 23], "you": [0, 1, 2, 4, 9, 14, 18, 21, 22, 23], "your": [19, 22], "z": [0, 1, 2, 4, 5, 12, 16, 21], "z_represent": [0, 1, 4, 5], "zero": [0, 2, 4, 9, 19], "zip": [0, 15, 18, 23], "\u03c8": 18}, "titles": ["ffsim", "ffsim.contract", "ffsim.linalg", "ffsim.optimize", "ffsim.qiskit", "ffsim.random", "ffsim.testing", "API reference", "Double-factorized representation of the molecular Hamiltonian", "Hamiltonians", "Explanations", "The local unitary cluster Jastrow (LUCJ) ansatz", "Orbital rotations and quadratic Hamiltonians", "Qubit gate decompositions of fermionic gates", "State vectors and gates", "How to simulate entanglement forging", "How to use the FermionOperator class", "How-to guides", "How to simulate the local unitary cluster Jastrow (LUCJ) ansatz", "How to build and transpile Qiskit quantum circuits", "How to use ffsim\u2019s Qiskit Sampler primitive", "ffsim", "Installation", "Implementing Trotter simulation of the double-factorized Hamiltonian", "Tutorials"], "titleterms": {"": 20, "The": 11, "action": 9, "an": 20, "ansatz": [11, 15, 18], "api": 7, "applic": 8, "background": 8, "balanc": [11, 19], "brief": 8, "build": [15, 19, 23], "can": 20, "choos": 15, "circuit": [19, 20], "cite": 21, "class": 16, "close": 20, "cluster": [11, 13, 18, 19], "code": 21, "comput": 15, "content": 21, "contract": 1, "coulomb": [13, 19], "criteria": 20, "data": 9, "decomposit": 13, "determin": [13, 19], "diagon": [13, 19], "docker": 22, "doubl": [8, 13, 19, 23], "energi": 15, "entangl": 15, "evolut": [8, 12, 13, 19], "exampl": [20, 21], "explan": 10, "factor": [8, 13, 19, 23], "fermion": [13, 14], "fermionoper": 16, "ffsim": [0, 1, 2, 3, 4, 5, 6, 20, 21], "ffsimsampl": 20, "fock": [13, 19], "forg": 15, "formula": 8, "from": [20, 22], "gate": [13, 14, 19], "gener": [11, 18], "guid": 17, "hamiltonian": [8, 9, 12, 13, 19, 23], "hartre": [13, 19], "how": [15, 16, 17, 18, 19, 20], "implement": 23, "initi": 15, "instal": [21, 22], "jastrow": [11, 13, 18, 19], "linalg": 2, "linear": 18, "linearoper": 9, "local": [11, 13, 18], "lucj": [11, 18, 20], "merg": 13, "method": 18, "molecul": [15, 20], "molecular": 8, "more": 20, "number": [13, 19], "occup": 15, "open": 20, "oper": [9, 13, 15, 19], "optim": [3, 15, 18], "orbit": [12, 13, 19], "overview": 19, "pip": 22, "prepar": [13, 19], "primit": 20, "qiskit": [4, 19, 20], "quadrat": 12, "quantum": 19, "qubit": 13, "random": 5, "refer": [7, 15], "represent": [8, 9], "rotat": [12, 13, 19], "sampl": 20, "sampler": 20, "scipi": 9, "shell": 20, "simul": [13, 15, 18, 19, 23], "slater": [13, 19], "sourc": 22, "spin": [11, 19], "spinless": 14, "state": [14, 19], "sum": [13, 19], "suzuki": 8, "test": 6, "time": [8, 12], "transform": 19, "transpil": 19, "treat": 14, "trotter": [8, 13, 19, 23], "tutori": 24, "ucj": [11, 13, 18, 19], "unbalanc": [11, 19], "unitari": [11, 13, 18, 19], "us": [16, 20, 22], "vector": 14, "via": [8, 9], "within": 22}}) \ No newline at end of file diff --git a/dev/tutorials/double-factorized-trotter.html b/dev/tutorials/double-factorized-trotter.html index ff9a7e5ff..0d23c9b02 100644 --- a/dev/tutorials/double-factorized-trotter.html +++ b/dev/tutorials/double-factorized-trotter.html @@ -6,7 +6,7 @@ - Implementing Trotter simulation of the double-factorized Hamiltonian - ffsim 0.0.44 documentation + Implementing Trotter simulation of the double-factorized Hamiltonian - ffsim 0.0.45.dev0 documentation @@ -167,7 +167,7 @@

The fidelity of the final result can be improved by increasing the number of Trotter steps.

@@ -624,7 +624,7 @@

Implement Trotter simulation
-Fidelity of Trotter-evolved state with exact state: 0.9985212854199046
+Fidelity of Trotter-evolved state with exact state: 0.9985212854203092
 

In the code cell below, we reproduce the results of our manually implemented function using ffsim’s built-in implementation.

@@ -652,7 +652,7 @@

Implement Trotter simulation
-Fidelity of Trotter-evolved state with exact state: 0.9985212854198294
+Fidelity of Trotter-evolved state with exact state: 0.9985212854200891
 

A higher order formula achieves a higher fidelity with fewer Trotter steps:

@@ -680,7 +680,7 @@

Implement Trotter simulation
-Fidelity of Trotter-evolved state with exact state: 0.9996731164187965
+Fidelity of Trotter-evolved state with exact state: 0.9996731164189154
 

You’ve made it to the end of this tutorial!

@@ -763,7 +763,7 @@

Implement Trotter simulation + diff --git a/dev/tutorials/double-factorized-trotter.ipynb b/dev/tutorials/double-factorized-trotter.ipynb index 8de0bc7d9..b86f4d858 100644 --- a/dev/tutorials/double-factorized-trotter.ipynb +++ b/dev/tutorials/double-factorized-trotter.ipynb @@ -18,10 +18,10 @@ "execution_count": 1, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:09.257287Z", - "iopub.status.busy": "2024-08-06T20:22:09.257093Z", - "iopub.status.idle": "2024-08-06T20:22:10.085823Z", - "shell.execute_reply": "2024-08-06T20:22:10.085204Z" + "iopub.execute_input": "2024-08-06T20:27:16.750481Z", + "iopub.status.busy": "2024-08-06T20:27:16.750283Z", + "iopub.status.idle": "2024-08-06T20:27:17.600039Z", + "shell.execute_reply": "2024-08-06T20:27:17.599433Z" } }, "outputs": [ @@ -80,10 +80,10 @@ "execution_count": 2, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.089563Z", - "iopub.status.busy": "2024-08-06T20:22:10.088937Z", - "iopub.status.idle": "2024-08-06T20:22:10.093633Z", - "shell.execute_reply": "2024-08-06T20:22:10.093169Z" + "iopub.execute_input": "2024-08-06T20:27:17.604720Z", + "iopub.status.busy": "2024-08-06T20:27:17.603362Z", + "iopub.status.idle": "2024-08-06T20:27:17.608576Z", + "shell.execute_reply": "2024-08-06T20:27:17.608010Z" } }, "outputs": [], @@ -106,10 +106,10 @@ "execution_count": 3, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.096003Z", - "iopub.status.busy": "2024-08-06T20:22:10.095649Z", - "iopub.status.idle": "2024-08-06T20:22:10.100167Z", - "shell.execute_reply": "2024-08-06T20:22:10.099575Z" + "iopub.execute_input": "2024-08-06T20:27:17.611044Z", + "iopub.status.busy": "2024-08-06T20:27:17.610643Z", + "iopub.status.idle": "2024-08-06T20:27:17.615491Z", + "shell.execute_reply": "2024-08-06T20:27:17.614936Z" } }, "outputs": [ @@ -172,10 +172,10 @@ "execution_count": 4, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.102538Z", - "iopub.status.busy": "2024-08-06T20:22:10.102064Z", - "iopub.status.idle": "2024-08-06T20:22:10.106251Z", - "shell.execute_reply": "2024-08-06T20:22:10.105767Z" + "iopub.execute_input": "2024-08-06T20:27:17.617773Z", + "iopub.status.busy": "2024-08-06T20:27:17.617584Z", + "iopub.status.idle": "2024-08-06T20:27:17.621837Z", + "shell.execute_reply": "2024-08-06T20:27:17.621335Z" } }, "outputs": [ @@ -208,10 +208,10 @@ "execution_count": 5, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.108398Z", - "iopub.status.busy": "2024-08-06T20:22:10.108211Z", - "iopub.status.idle": "2024-08-06T20:22:10.112154Z", - "shell.execute_reply": "2024-08-06T20:22:10.111651Z" + "iopub.execute_input": "2024-08-06T20:27:17.624153Z", + "iopub.status.busy": "2024-08-06T20:27:17.623845Z", + "iopub.status.idle": "2024-08-06T20:27:17.627935Z", + "shell.execute_reply": "2024-08-06T20:27:17.627427Z" } }, "outputs": [ @@ -242,10 +242,10 @@ "execution_count": 6, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.114299Z", - "iopub.status.busy": "2024-08-06T20:22:10.114107Z", - "iopub.status.idle": "2024-08-06T20:22:10.132340Z", - "shell.execute_reply": "2024-08-06T20:22:10.131736Z" + "iopub.execute_input": "2024-08-06T20:27:17.630174Z", + "iopub.status.busy": "2024-08-06T20:27:17.629945Z", + "iopub.status.idle": "2024-08-06T20:27:17.648995Z", + "shell.execute_reply": "2024-08-06T20:27:17.648518Z" } }, "outputs": [ @@ -253,7 +253,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Maximum error in a tensor entry: 0.036685417309836654\n" + "Maximum error in a tensor entry: 0.03668541730983654\n" ] } ], @@ -302,10 +302,10 @@ "execution_count": 7, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.135004Z", - "iopub.status.busy": "2024-08-06T20:22:10.134542Z", - "iopub.status.idle": "2024-08-06T20:22:10.138718Z", - "shell.execute_reply": "2024-08-06T20:22:10.138178Z" + "iopub.execute_input": "2024-08-06T20:27:17.651324Z", + "iopub.status.busy": "2024-08-06T20:27:17.650973Z", + "iopub.status.idle": "2024-08-06T20:27:17.655237Z", + "shell.execute_reply": "2024-08-06T20:27:17.654630Z" } }, "outputs": [], @@ -360,10 +360,10 @@ "execution_count": 8, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.140955Z", - "iopub.status.busy": "2024-08-06T20:22:10.140609Z", - "iopub.status.idle": "2024-08-06T20:22:10.144255Z", - "shell.execute_reply": "2024-08-06T20:22:10.143665Z" + "iopub.execute_input": "2024-08-06T20:27:17.657402Z", + "iopub.status.busy": "2024-08-06T20:27:17.657213Z", + "iopub.status.idle": "2024-08-06T20:27:17.660556Z", + "shell.execute_reply": "2024-08-06T20:27:17.660089Z" } }, "outputs": [], @@ -400,10 +400,10 @@ "execution_count": 9, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.146415Z", - "iopub.status.busy": "2024-08-06T20:22:10.146225Z", - "iopub.status.idle": "2024-08-06T20:22:10.206038Z", - "shell.execute_reply": "2024-08-06T20:22:10.205467Z" + "iopub.execute_input": "2024-08-06T20:27:17.662713Z", + "iopub.status.busy": "2024-08-06T20:27:17.662509Z", + "iopub.status.idle": "2024-08-06T20:27:17.722411Z", + "shell.execute_reply": "2024-08-06T20:27:17.721831Z" } }, "outputs": [], @@ -439,10 +439,10 @@ "execution_count": 10, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.208861Z", - "iopub.status.busy": "2024-08-06T20:22:10.208263Z", - "iopub.status.idle": "2024-08-06T20:22:10.257514Z", - "shell.execute_reply": "2024-08-06T20:22:10.257029Z" + "iopub.execute_input": "2024-08-06T20:27:17.725377Z", + "iopub.status.busy": "2024-08-06T20:27:17.724945Z", + "iopub.status.idle": "2024-08-06T20:27:17.774268Z", + "shell.execute_reply": "2024-08-06T20:27:17.773751Z" } }, "outputs": [ @@ -450,7 +450,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9402435115135183\n" + "Fidelity of Trotter-evolved state with exact state: 0.9402435115158925\n" ] } ], @@ -480,10 +480,10 @@ "execution_count": 11, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.259956Z", - "iopub.status.busy": "2024-08-06T20:22:10.259596Z", - "iopub.status.idle": "2024-08-06T20:22:10.483860Z", - "shell.execute_reply": "2024-08-06T20:22:10.483316Z" + "iopub.execute_input": "2024-08-06T20:27:17.776790Z", + "iopub.status.busy": "2024-08-06T20:27:17.776412Z", + "iopub.status.idle": "2024-08-06T20:27:17.986594Z", + "shell.execute_reply": "2024-08-06T20:27:17.985954Z" } }, "outputs": [ @@ -491,7 +491,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9985212854199046\n" + "Fidelity of Trotter-evolved state with exact state: 0.9985212854203092\n" ] } ], @@ -521,10 +521,10 @@ "execution_count": 12, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.486470Z", - "iopub.status.busy": "2024-08-06T20:22:10.486092Z", - "iopub.status.idle": "2024-08-06T20:22:10.624276Z", - "shell.execute_reply": "2024-08-06T20:22:10.623647Z" + "iopub.execute_input": "2024-08-06T20:27:17.989362Z", + "iopub.status.busy": "2024-08-06T20:27:17.988983Z", + "iopub.status.idle": "2024-08-06T20:27:18.116167Z", + "shell.execute_reply": "2024-08-06T20:27:18.115634Z" } }, "outputs": [ @@ -532,7 +532,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9985212854198294\n" + "Fidelity of Trotter-evolved state with exact state: 0.9985212854200891\n" ] } ], @@ -563,10 +563,10 @@ "execution_count": 13, "metadata": { "execution": { - "iopub.execute_input": "2024-08-06T20:22:10.639152Z", - "iopub.status.busy": "2024-08-06T20:22:10.638794Z", - "iopub.status.idle": "2024-08-06T20:22:10.741708Z", - "shell.execute_reply": "2024-08-06T20:22:10.741080Z" + "iopub.execute_input": "2024-08-06T20:27:18.132158Z", + "iopub.status.busy": "2024-08-06T20:27:18.131774Z", + "iopub.status.idle": "2024-08-06T20:27:18.235740Z", + "shell.execute_reply": "2024-08-06T20:27:18.235222Z" } }, "outputs": [ @@ -574,7 +574,7 @@ "name": "stdout", "output_type": "stream", "text": [ - "Fidelity of Trotter-evolved state with exact state: 0.9996731164187965\n" + "Fidelity of Trotter-evolved state with exact state: 0.9996731164189154\n" ] } ], diff --git a/dev/tutorials/index.html b/dev/tutorials/index.html index 4f0ef409f..e157094f1 100644 --- a/dev/tutorials/index.html +++ b/dev/tutorials/index.html @@ -6,7 +6,7 @@ - Tutorials - ffsim 0.0.44 documentation + Tutorials - ffsim 0.0.45.dev0 documentation @@ -166,7 +166,7 @@
@@ -190,7 +190,7 @@