{"action":"created","comment":{"url":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/comments/145002906","pull_request_review_id":69738517,"id":145002906,"diff_hunk":"@@ -0,0 +1,199 @@\n+#   Licensed under the Apache License, Version 2.0 (the \"License\");\n+#   you may not use this file except in compliance with the License.\n+#   You may obtain a copy of the License at\n+#\n+#       http://www.apache.org/licenses/LICENSE-2.0\n+#\n+#   Unless required by applicable law or agreed to in writing, software\n+#   distributed under the License is distributed on an \"AS IS\" BASIS,\n+#   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n+#   See the License for the specific language governing permissions and\n+#   limitations under the License.\n+\n+\"\"\"Module to create and manipulate unitary coupled cluster operators.\"\"\"\n+\n+import itertools\n+import numpy\n+\n+from openfermion.ops import FermionOperator, QubitOperator\n+\n+\n+def uccsd_operator(single_amplitudes, double_amplitudes, anti_hermitian=True):\n+    \"\"\"Create a fermionic operator that is the generator of uccsd.\n+\n+    This a the most straight-forward method to generate UCCSD operators,\n+    however it is slightly inefficient. In particular, it parameterizes\n+    all possible excitations, so it represents a generalized unitary coupled\n+    cluster ansatz, but also does not explicitly enforce the uniqueness\n+    in parametrization, so it is redundant. For example there will be a linear\n+    dependency in the ansatz of single_amplitudes[i,j] and\n+    single_amplitudes[j,i].\n+\n+    Args:\n+        single_amplitudes(list or ndarray): list of lists with each sublist\n+            storing a list of indices followed by single excitation amplitudes\n+            i.e. [[[i,j],t_ij], ...] OR [NxN] array storing single excitation\n+            amplitudes corresponding to\n+            t[i,j] * (a_i^\\dagger a_j - H.C.)\n+        double_amplitudes(list or ndarray): list of lists with each sublist\n+            storing a list of indices followed by double excitation amplitudes\n+            i.e. [[[i,j,k,l],t_ijkl], ...] OR [NxNxNxN] array storing double\n+            excitation amplitudes corresponding to\n+            t[i,j,k,l] * (a_i^\\dagger a_j a_k^\\dagger a_l - H.C.)\n+        anti_hermitian(Bool): Flag to generate only normal CCSD operator\n+            rather than unitary variant, primarily for testing\n+\n+    Returns:\n+        uccsd_generator(FermionOperator): Anti-hermitian fermion operator that\n+        is the generator for the uccsd wavefunction.\n+    \"\"\"\n+\n+    uccsd_generator = FermionOperator()\n+\n+    # Re-format inputs (ndarrays to lists) if necessary\n+    if (isinstance(single_amplitudes, numpy.ndarray) or\n+            isinstance(double_amplitudes, numpy.ndarray)):\n+        single_amplitudes, double_amplitudes = uccsd_convert_amplitude_format(\n+            single_amplitudes,\n+            double_amplitudes)\n+\n+    # Add single excitations\n+    for (i, j), t_ij in single_amplitudes:\n+        i, j = int(i), int(j)\n+        uccsd_generator += FermionOperator(((i, 1), (j, 0)), t_ij)\n+        if anti_hermitian:\n+            uccsd_generator += FermionOperator(((j, 1), (i, 0)), -t_ij)\n+\n+    # Add double excitations\n+    for (i, j, k, l), t_ijkl in double_amplitudes:\n+        i, j, k, l = int(i), int(j), int(k), int(l)\n+        uccsd_generator += FermionOperator(\n+            ((i, 1), (j, 0), (k, 1), (l, 0)), t_ijkl)\n+        if anti_hermitian:\n+            uccsd_generator += FermionOperator(\n+                ((l, 1), (k, 0), (j, 1), (i, 0)), -t_ijkl)\n+    return uccsd_generator\n+\n+\n+def uccsd_convert_amplitude_format(single_amplitudes, double_amplitudes):\n+    \"\"\"Re-format single_amplitudes and double_amplitudes from ndarrays to lists.\n+\n+        Args:\n+        single_amplitudes(ndarray): [NxN] array storing single excitation\n+            amplitudes corresponding to t[i,j] * (a_i^\\dagger a_j - H.C.)\n+        double_amplitudes(ndarray): [NxNxNxN] array storing double excitation\n+            amplitudes corresponding to\n+            t[i,j,k,l] * (a_i^\\dagger a_j a_k^\\dagger a_l - H.C.)\n+\n+        Returns:\n+        single_amplitudes_list(list): list of lists with each sublist storing\n+            a list of indices followed by single excitation amplitudes\n+            i.e. [[[i,j],t_ij], ...]\n+        double_amplitudes_list(list): list of lists with each sublist storing\n+            a list of indices followed by double excitation amplitudes\n+            i.e. [[[i,j,k,l],t_ijkl], ...]\n+    \"\"\"\n+    single_amplitudes_list, double_amplitudes_list = [], []\n+\n+    for i, j in zip(*single_amplitudes.nonzero()):\n+        single_amplitudes_list.append([[i, j], single_amplitudes[i, j]])\n+\n+    for i, j, k, l in zip(*double_amplitudes.nonzero()):\n+        double_amplitudes_list.append([[i, j, k, l],\n+                                      double_amplitudes[i, j, k, l]])\n+    return single_amplitudes_list, double_amplitudes_list\n+\n+\n+def uccsd_singlet_paramsize(n_qubits, n_electrons):\n+    \"\"\"Determine number of independent amplitudes for singlet UCCSD\n+\n+    Args:\n+        n_qubits(int): Number of qubits/spin-orbitals in the system\n+        n_electrons(int): Number of electrons in the reference state\n+\n+    Returns:\n+        Number of independent parameters for singlet UCCSD with a single\n+        reference.\n+    \"\"\"\n+    n_occupied = int(numpy.ceil(n_electrons / 2.))\n+    n_virtual = n_qubits / 2 - n_occupied\n+\n+    n_single_amplitudes = n_occupied * n_virtual\n+    n_double_amplitudes = n_single_amplitudes ** 2\n+    return (n_single_amplitudes + n_double_amplitudes)\n+\n+\n+def uccsd_singlet_operator(packed_amplitudes,\n+                           n_qubits,\n+                           n_electrons):\n+    \"\"\"Create a singlet UCCSD generator for a system with n_electrons\n+\n+    This function generates a FermionOperator for a UCCSD generator designed\n+        to act on a single reference state consisting of n_qubits spin orbitals\n+        and n_electrons electrons, that is a spin singlet operator, meaning it\n+        conserves spin.\n+\n+    Args:\n+        packed_amplitudes(ndarray): Compact array storing the unique single\n+            and double excitation amplitudes for a singlet UCCSD operator.\n+            The ordering lists unique single excitations before double\n+            excitations.\n+        n_qubits(int): Number of spin-orbitals used to represent the system,\n+            which also corresponds to number of qubits in a non-compact map.\n+        n_electrons(int): Number of electrons in the physical system.\n+\n+    Returns:\n+        uccsd_generator(FermionOperator): Generator of the UCCSD operator that\n+            builds the UCCSD wavefunction.\n+    \"\"\"\n+    n_occupied = int(numpy.ceil(n_electrons / 2.))\n+    n_virtual = int(n_qubits / 2 - n_occupied)  # Virtual Spatial Orbitals\n+    n_t1 = int(n_occupied * n_virtual)\n+\n+    t1 = packed_amplitudes[:n_t1]\n+    t2 = packed_amplitudes[n_t1:]\n+\n+    def t1_ind(i, j):\n+        return i * n_occupied + j\n+\n+    def t2_ind(i, j, k, l):\n+        return (i * n_occupied * n_virtual * n_occupied +\n+                j * n_virtual * n_occupied +\n+                k * n_occupied +\n+                l)\n+\n+    uccsd_generator = FermionOperator()\n+\n+    spaces = range(n_virtual), range(n_occupied), range(2)\n+\n+    for i, j, s in itertools.product(*spaces):\n+        uccsd_generator += FermionOperator(\n+            (\n+                (2 * (i + n_occupied) + s, 1),\n+                (2 * j + s, 0),\n+            ),\n+            coefficient=t1[t1_ind(i, j)])\n+\n+        uccsd_generator += FermionOperator(\n+            (\n+                (2 * j + s, 1),\n+                (2 * (i + n_occupied) + s, 0),\n+            ),\n+            coefficient=-t1[t1_ind(i, j)])","path":"src/openfermion/utils/_unitary_cc.py","position":182,"original_position":182,"commit_id":"d2f8b880ca746d489b349e5dad72ea9f739a8b7b","original_commit_id":"d2f8b880ca746d489b349e5dad72ea9f739a8b7b","user":{"login":"babbush","id":14242687,"avatar_url":"https://avatars2.githubusercontent.com/u/14242687?v=4","gravatar_id":"","url":"https://api.github.com/users/babbush","html_url":"https://github.com/babbush","followers_url":"https://api.github.com/users/babbush/followers","following_url":"https://api.github.com/users/babbush/following{/other_user}","gists_url":"https://api.github.com/users/babbush/gists{/gist_id}","starred_url":"https://api.github.com/users/babbush/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/babbush/subscriptions","organizations_url":"https://api.github.com/users/babbush/orgs","repos_url":"https://api.github.com/users/babbush/repos","events_url":"https://api.github.com/users/babbush/events{/privacy}","received_events_url":"https://api.github.com/users/babbush/received_events","type":"User","site_admin":false},"body":"Oops, yeah you're good. Its because that equal sign is setting the value of an optional parameter. That is the correct way to do it. I read quick and thought you were assigning an variable without spaces, which would have been a violation.","created_at":"2017-10-17T00:27:01Z","updated_at":"2017-10-17T00:27:01Z","html_url":"https://github.com/quantumlib/OpenFermion/pull/54#discussion_r145002906","pull_request_url":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/54","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/comments/145002906"},"html":{"href":"https://github.com/quantumlib/OpenFermion/pull/54#discussion_r145002906"},"pull_request":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/54"}},"in_reply_to_id":145000961},"pull_request":{"url":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/54","id":146916201,"html_url":"https://github.com/quantumlib/OpenFermion/pull/54","diff_url":"https://github.com/quantumlib/OpenFermion/pull/54.diff","patch_url":"https://github.com/quantumlib/OpenFermion/pull/54.patch","issue_url":"https://api.github.com/repos/quantumlib/OpenFermion/issues/54","number":54,"state":"open","locked":false,"title":"Move UCC independent functions back in OpenFermion","user":{"login":"jarrodmcc","id":7718204,"avatar_url":"https://avatars2.githubusercontent.com/u/7718204?v=4","gravatar_id":"","url":"https://api.github.com/users/jarrodmcc","html_url":"https://github.com/jarrodmcc","followers_url":"https://api.github.com/users/jarrodmcc/followers","following_url":"https://api.github.com/users/jarrodmcc/following{/other_user}","gists_url":"https://api.github.com/users/jarrodmcc/gists{/gist_id}","starred_url":"https://api.github.com/users/jarrodmcc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarrodmcc/subscriptions","organizations_url":"https://api.github.com/users/jarrodmcc/orgs","repos_url":"https://api.github.com/users/jarrodmcc/repos","events_url":"https://api.github.com/users/jarrodmcc/events{/privacy}","received_events_url":"https://api.github.com/users/jarrodmcc/received_events","type":"User","site_admin":false},"body":"Moves the routines related to UCC that were independent of ProjectQ out of the OpenFermion-ProjectQ repo back into the main branch under utilities.  Merge this before merging branch.","created_at":"2017-10-17T00:07:45Z","updated_at":"2017-10-17T00:27:01Z","closed_at":null,"merged_at":null,"merge_commit_sha":"bfe1f7a60fd671b46646c42050c3c93eeb11615e","assignee":null,"assignees":[],"requested_reviewers":[],"milestone":null,"commits_url":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/54/commits","review_comments_url":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/54/comments","review_comment_url":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/comments{/number}","comments_url":"https://api.github.com/repos/quantumlib/OpenFermion/issues/54/comments","statuses_url":"https://api.github.com/repos/quantumlib/OpenFermion/statuses/d2f8b880ca746d489b349e5dad72ea9f739a8b7b","head":{"label":"jarrodmcc:ucc_independent","ref":"ucc_independent","sha":"d2f8b880ca746d489b349e5dad72ea9f739a8b7b","user":{"login":"jarrodmcc","id":7718204,"avatar_url":"https://avatars2.githubusercontent.com/u/7718204?v=4","gravatar_id":"","url":"https://api.github.com/users/jarrodmcc","html_url":"https://github.com/jarrodmcc","followers_url":"https://api.github.com/users/jarrodmcc/followers","following_url":"https://api.github.com/users/jarrodmcc/following{/other_user}","gists_url":"https://api.github.com/users/jarrodmcc/gists{/gist_id}","starred_url":"https://api.github.com/users/jarrodmcc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarrodmcc/subscriptions","organizations_url":"https://api.github.com/users/jarrodmcc/orgs","repos_url":"https://api.github.com/users/jarrodmcc/repos","events_url":"https://api.github.com/users/jarrodmcc/events{/privacy}","received_events_url":"https://api.github.com/users/jarrodmcc/received_events","type":"User","site_admin":false},"repo":{"id":105072798,"name":"OpenFermion","full_name":"jarrodmcc/OpenFermion","owner":{"login":"jarrodmcc","id":7718204,"avatar_url":"https://avatars2.githubusercontent.com/u/7718204?v=4","gravatar_id":"","url":"https://api.github.com/users/jarrodmcc","html_url":"https://github.com/jarrodmcc","followers_url":"https://api.github.com/users/jarrodmcc/followers","following_url":"https://api.github.com/users/jarrodmcc/following{/other_user}","gists_url":"https://api.github.com/users/jarrodmcc/gists{/gist_id}","starred_url":"https://api.github.com/users/jarrodmcc/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jarrodmcc/subscriptions","organizations_url":"https://api.github.com/users/jarrodmcc/orgs","repos_url":"https://api.github.com/users/jarrodmcc/repos","events_url":"https://api.github.com/users/jarrodmcc/events{/privacy}","received_events_url":"https://api.github.com/users/jarrodmcc/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jarrodmcc/OpenFermion","description":"OpenFermion: the electronic structure package for quantum computers.","fork":true,"url":"https://api.github.com/repos/jarrodmcc/OpenFermion","forks_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/forks","keys_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/teams","hooks_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/hooks","issue_events_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/issues/events{/number}","events_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/events","assignees_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/assignees{/user}","branches_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/branches{/branch}","tags_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/tags","blobs_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/git/refs{/sha}","trees_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/statuses/{sha}","languages_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/languages","stargazers_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/stargazers","contributors_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/contributors","subscribers_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/subscribers","subscription_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/subscription","commits_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/commits{/sha}","git_commits_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/git/commits{/sha}","comments_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/comments{/number}","issue_comment_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/issues/comments{/number}","contents_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/contents/{+path}","compare_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/merges","archive_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/downloads","issues_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/issues{/number}","pulls_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/pulls{/number}","milestones_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/milestones{/number}","notifications_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/labels{/name}","releases_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/releases{/id}","deployments_url":"https://api.github.com/repos/jarrodmcc/OpenFermion/deployments","created_at":"2017-09-27T21:46:41Z","updated_at":"2017-09-27T21:46:43Z","pushed_at":"2017-10-17T00:04:06Z","git_url":"git://github.com/jarrodmcc/OpenFermion.git","ssh_url":"git@github.com:jarrodmcc/OpenFermion.git","clone_url":"https://github.com/jarrodmcc/OpenFermion.git","svn_url":"https://github.com/jarrodmcc/OpenFermion","homepage":"","size":2264,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"develop"}},"base":{"label":"quantumlib:master","ref":"master","sha":"3944ca5d08f574b99bb0f66dbffa243203f905ff","user":{"login":"quantumlib","id":31279789,"avatar_url":"https://avatars1.githubusercontent.com/u/31279789?v=4","gravatar_id":"","url":"https://api.github.com/users/quantumlib","html_url":"https://github.com/quantumlib","followers_url":"https://api.github.com/users/quantumlib/followers","following_url":"https://api.github.com/users/quantumlib/following{/other_user}","gists_url":"https://api.github.com/users/quantumlib/gists{/gist_id}","starred_url":"https://api.github.com/users/quantumlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quantumlib/subscriptions","organizations_url":"https://api.github.com/users/quantumlib/orgs","repos_url":"https://api.github.com/users/quantumlib/repos","events_url":"https://api.github.com/users/quantumlib/events{/privacy}","received_events_url":"https://api.github.com/users/quantumlib/received_events","type":"Organization","site_admin":false},"repo":{"id":104403768,"name":"OpenFermion","full_name":"quantumlib/OpenFermion","owner":{"login":"quantumlib","id":31279789,"avatar_url":"https://avatars1.githubusercontent.com/u/31279789?v=4","gravatar_id":"","url":"https://api.github.com/users/quantumlib","html_url":"https://github.com/quantumlib","followers_url":"https://api.github.com/users/quantumlib/followers","following_url":"https://api.github.com/users/quantumlib/following{/other_user}","gists_url":"https://api.github.com/users/quantumlib/gists{/gist_id}","starred_url":"https://api.github.com/users/quantumlib/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/quantumlib/subscriptions","organizations_url":"https://api.github.com/users/quantumlib/orgs","repos_url":"https://api.github.com/users/quantumlib/repos","events_url":"https://api.github.com/users/quantumlib/events{/privacy}","received_events_url":"https://api.github.com/users/quantumlib/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/quantumlib/OpenFermion","description":"OpenFermion: The Electronic Structure Package For Quantum Computers.","fork":false,"url":"https://api.github.com/repos/quantumlib/OpenFermion","forks_url":"https://api.github.com/repos/quantumlib/OpenFermion/forks","keys_url":"https://api.github.com/repos/quantumlib/OpenFermion/keys{/key_id}","collaborators_url":"https://api.github.com/repos/quantumlib/OpenFermion/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/quantumlib/OpenFermion/teams","hooks_url":"https://api.github.com/repos/quantumlib/OpenFermion/hooks","issue_events_url":"https://api.github.com/repos/quantumlib/OpenFermion/issues/events{/number}","events_url":"https://api.github.com/repos/quantumlib/OpenFermion/events","assignees_url":"https://api.github.com/repos/quantumlib/OpenFermion/assignees{/user}","branches_url":"https://api.github.com/repos/quantumlib/OpenFermion/branches{/branch}","tags_url":"https://api.github.com/repos/quantumlib/OpenFermion/tags","blobs_url":"https://api.github.com/repos/quantumlib/OpenFermion/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/quantumlib/OpenFermion/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/quantumlib/OpenFermion/git/refs{/sha}","trees_url":"https://api.github.com/repos/quantumlib/OpenFermion/git/trees{/sha}","statuses_url":"https://api.github.com/repos/quantumlib/OpenFermion/statuses/{sha}","languages_url":"https://api.github.com/repos/quantumlib/OpenFermion/languages","stargazers_url":"https://api.github.com/repos/quantumlib/OpenFermion/stargazers","contributors_url":"https://api.github.com/repos/quantumlib/OpenFermion/contributors","subscribers_url":"https://api.github.com/repos/quantumlib/OpenFermion/subscribers","subscription_url":"https://api.github.com/repos/quantumlib/OpenFermion/subscription","commits_url":"https://api.github.com/repos/quantumlib/OpenFermion/commits{/sha}","git_commits_url":"https://api.github.com/repos/quantumlib/OpenFermion/git/commits{/sha}","comments_url":"https://api.github.com/repos/quantumlib/OpenFermion/comments{/number}","issue_comment_url":"https://api.github.com/repos/quantumlib/OpenFermion/issues/comments{/number}","contents_url":"https://api.github.com/repos/quantumlib/OpenFermion/contents/{+path}","compare_url":"https://api.github.com/repos/quantumlib/OpenFermion/compare/{base}...{head}","merges_url":"https://api.github.com/repos/quantumlib/OpenFermion/merges","archive_url":"https://api.github.com/repos/quantumlib/OpenFermion/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/quantumlib/OpenFermion/downloads","issues_url":"https://api.github.com/repos/quantumlib/OpenFermion/issues{/number}","pulls_url":"https://api.github.com/repos/quantumlib/OpenFermion/pulls{/number}","milestones_url":"https://api.github.com/repos/quantumlib/OpenFermion/milestones{/number}","notifications_url":"https://api.github.com/repos/quantumlib/OpenFermion/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/quantumlib/OpenFermion/labels{/name}","releases_url":"https://api.github.com/repos/quantumlib/OpenFermion/releases{/id}","deployments_url":"https://api.github.com/repos/quantumlib/OpenFermion/deployments","created_at":"2017-09-21T22:10:28Z","updated_at":"2017-10-16T20:40:28Z","pushed_at":"2017-10-17T00:07:46Z","git_url":"git://github.com/quantumlib/OpenFermion.git","ssh_url":"git@github.com:quantumlib/OpenFermion.git","clone_url":"https://github.com/quantumlib/OpenFermion.git","svn_url":"https://github.com/quantumlib/OpenFermion","homepage":"","size":2263,"stargazers_count":25,"watchers_count":25,"language":"Python","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":12,"mirror_url":null,"open_issues_count":4,"forks":12,"open_issues":4,"watchers":25,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/54"},"html":{"href":"https://github.com/quantumlib/OpenFermion/pull/54"},"issue":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/issues/54"},"comments":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/issues/54/comments"},"review_comments":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/54/comments"},"review_comment":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/pulls/54/commits"},"statuses":{"href":"https://api.github.com/repos/quantumlib/OpenFermion/statuses/d2f8b880ca746d489b349e5dad72ea9f739a8b7b"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"babbush"}}