{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/machine-learning-method-for-state-preparation","title":"Machine learning method for state preparation and gate synthesis on photonic quantum computers","arxiv_id":"1807.10781","date":"2018-07-27","proceeding":null,"authors":["Juan Miguel Arrazola","Thomas R. Bromley","Josh Izaac","Casey R. Myers","Kamil Brádler","Nathan Killoran"],"abstract":"We show how techniques from machine learning and optimization can be used to find circuits of photonic quantum computers that perform a desired transformation between input and output states. In the simplest case of a single input state, our method discovers circuits for preparing a desired quantum state. In the more general case of several input and output relations, our method obtains circuits that reproduce the action of a target unitary transformation. We use a continuous-variable quantum neural network as the circuit architecture. The network is composed of several layers of optical gates with variable parameters that are optimized by applying automatic differentiation using the TensorFlow backend of the Strawberry Fields photonic quantum computer simulator. We demonstrate the power and versatility of our methods by learning how to use short-depth circuits to synthesize single photons, Gottesman-Kitaev-Preskill states, NOON states, cubic phase gates, random unitaries, cross-Kerr interactions, as well as several other states and gates. We routinely obtain high fidelities above 99\\% using short-depth circuits, typically consisting of a few hundred gates. The circuits are obtained automatically by simply specifying the target state or gate and running the optimization algorithm.","url_abs":"http://arxiv.org/abs/1807.10781v1","url_pdf":"http://arxiv.org/pdf/1807.10781v1.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"links_only","authors_date_abstract":"arXiv metadata, CC0 1.0 (https://info.arxiv.org/help/license), from the Kaggle arXiv metadata snapshot of 2026-09-12"},"code_links":[{"paper_slug":"machine-learning-method-for-state-preparation","repo_url":"https://github.com/XanaduAI/quantum-learning","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok","spdx":"Apache-2.0"}},{"paper_slug":"machine-learning-method-for-state-preparation","repo_url":"https://github.com/anthayes92/Python-Examples","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}},{"paper_slug":"machine-learning-method-for-state-preparation","repo_url":"https://github.com/anthayes92/Python-Showcase","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"tf","reach":{"status":"ok"}}],"tasks":[],"methods":[],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"atlas_url":"https://app.syntology.ai/?focus=1807.10781","mcp":{"get_harvested_code_for_paper":{"arxiv_id":"1807.10781"}},"developers":"https://syntology.ai/developers","read_at":"2026-09-24T18:15:14+00:00","read_at_is":"when the build read Syntology's graph, not when any sample ran","claim":"Per-sample execution status on synthesized fixtures; not a correctness claim about the paper. Samples come from repositories linked to the paper, official or community; repo_kind says which.","repos":[{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/anthayes92/Python-Showcase","reach":{"status":"ok"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/XanaduAI/quantum-learning","reach":{"status":"ok","spdx":"Apache-2.0"}},{"provenance":"external:paperswithcode_snapshot_2025-07-28","url":"https://github.com/anthayes92/Python-Examples","reach":{"status":"ok"}}],"summary":{"unverified":11},"by_repo_kind":{"official":{"samples":11,"ran":0,"repositories":1}},"repo_kind_vocabulary":{"official":"The archive marks this repository official for the paper","named_in_paper":"The archive records that the paper mentions this repository; it is not marked official","listed":"In the archive's code links for this paper, not marked official and not recorded as mentioned in the paper","found_in_text":"Syntology found this repository in the paper's own text; whether it is the authors' implementation is not asserted","community":"Not in the archive's code links for this paper; a community repository Syntology harvested"},"n_pointer_only_for_licence":0,"samples":[{"code_sha256_prefix":"8eb0770ef5daa2e4","entry":"ON","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"learner/states.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/learner/states.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8eb0770ef5daa2e4"}},{"code_sha256_prefix":"f050e2638b889e61","entry":"cat_state","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"state_learner.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/state_learner.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"f050e2638b889e61"}},{"code_sha256_prefix":"8f2af5e7af3a07be","entry":"hex_GKP","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"learner/states.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/learner/states.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"8f2af5e7af3a07be"}},{"code_sha256_prefix":"9d21c843d38ac649","entry":"parse_arguments","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"gate_synthesis.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/gate_synthesis.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"9d21c843d38ac649"}},{"code_sha256_prefix":"ff2bc666de3f55a0","entry":"parse_arguments","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"state_learner.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/state_learner.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ff2bc666de3f55a0"}},{"code_sha256_prefix":"918d02ce8c865757","entry":"plot_cost","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"learner/plots.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/learner/plots.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"918d02ce8c865757"}},{"code_sha256_prefix":"07c26eb3c87d3a0b","entry":"real_unitary_overlaps","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"gate_synthesis.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/gate_synthesis.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"07c26eb3c87d3a0b"}},{"code_sha256_prefix":"ba6aa0d5fc7759cd","entry":"single_photon","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"learner/states.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/learner/states.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"ba6aa0d5fc7759cd"}},{"code_sha256_prefix":"70829daa0cbe6342","entry":"state_fidelity","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"state_learner.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/state_learner.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"70829daa0cbe6342"}},{"code_sha256_prefix":"cf26b7cab8951f14","entry":"wigner","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"learner/plots.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/learner/plots.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"cf26b7cab8951f14"}},{"code_sha256_prefix":"d590768d59081430","entry":"wigner_contour_plot","repo":"XanaduAI/quantum-learning","repo_kind":"official","path":"learner/plots.py","file_url":"https://github.com/XanaduAI/quantum-learning/blob/HEAD/learner/plots.py","link_basis":"first_harvest_node","language":"python","status":"unverified","verification_level":0,"contract_check":null,"metamorphic_tier":null,"behaviour_fingerprint":false,"licence":"Apache-2.0","inline_ok":true,"mcp_get_code":{"code_sha256":"d590768d59081430"}}]},"arxiv_metadata":null,"syntology_extracted_results":null}