{"id":13776580,"url":"https://stationq.github.io/Liquid/","last_synced_at":"2025-05-11T10:31:12.989Z","repository":{"id":201355577,"uuid":"52559848","full_name":"StationQ/Liquid","owner":"StationQ","description":"The Language-Integrated Quantum Operations (LIQUi|\u003e) Simulator","archived":false,"fork":false,"pushed_at":"2018-08-23T17:26:18.000Z","size":41633,"stargazers_count":435,"open_issues_count":3,"forks_count":101,"subscribers_count":76,"default_branch":"master","last_synced_at":"2024-02-22T22:34:40.316Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"http://StationQ.github.io/Liquid","language":"F#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/StationQ.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2016-02-25T21:58:15.000Z","updated_at":"2024-02-02T16:13:22.000Z","dependencies_parsed_at":"2024-02-17T19:15:24.658Z","dependency_job_id":null,"html_url":"https://github.com/StationQ/Liquid","commit_stats":null,"previous_names":["stationq/liquid"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StationQ%2FLiquid","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StationQ%2FLiquid/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StationQ%2FLiquid/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/StationQ%2FLiquid/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/StationQ","download_url":"https://codeload.github.com/StationQ/Liquid/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":253551617,"owners_count":21926323,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-03T18:00:29.415Z","updated_at":"2025-05-11T10:31:07.967Z","avatar_url":"https://github.com/StationQ.png","language":"F#","funding_links":[],"categories":["Quantum simulators"],"sub_categories":[],"readme":"# The Language-Integrated Quantum Operations (LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A;) simulator\n\n## News\n\n__2017/12/11 Microsoft Quantum Development Kit (Preview) released__\n \nWe are very happy to announce the availability of the [Microsoft Quantum Development Kit (Preview)](https://www.microsoft.com/en-us/quantum/development-kit). There is a nice [blog entry](https://blogs.microsoft.com/ai/2017/12/11/future-quantum-microsoft-releases-free-preview-quantum-development-kit/) for details if you'd like to read more. The release contains a new language (Q#), compiler, simulators, examples, libraries (in source form) and full documentation. There is also a video walk through showing quantum code samples as part of the [Microsoft Mechanics](https://www.youtube.com/watch?v=v7b4J2INq9c) series.\n\n__2017/11/03 Updated Binaries__\n \nThe latest version of Visual Studio/.Net/FSharp (2017) is incompatible with the binaries we've previously shipped for LIQ\u003ci\u003eUi\u003c/i\u003e\\|\u0026#x232A;. All the compiled examples will work, but new code or compiling from scripts will fail. The current version on the Github site has been updated to fix this. Following the [Getting Started](http://stationq.github.io/Liquid/getting-started/) is the easiest way to re-install everything. If you already have a version of VS2017, then you can skip that piece.\n\n__2017/09/26 Announcement of Microsoft Quantum__\n \nWith the [Microsoft Ignite](https://www.youtube.com/watch?v=N3csr3fXBfo) announcement of our broader quantum effort yesterday, I'd encourage members of the list to sign up for the new Microsoft quarterly [Quantum Newsletter](https://info.microsoft.com/Quantum-Computing-Newsletter-Signup.html) for the latest information on our complete software stack for quantum computing.\n\n__2017/07/13 Re-compiled for VS 2017__\n \nUser Brandon Langenberg at FAU discovered that any compilations done with VS 2017 will not work with the shipped bits (since they were built with VS 2015). We have re-compiled all the binaries and have moved to F# 4.1 (FSharp.Core 4.4.1.0) along with .Net Framework 4.6.1.\n\n__2017/06/21 Bug fixed in UserCode/DaveWecker/AltOutput.fs__\n\nUser thiennm noted that classically controlled gates were dropping a qubit in the QASM output (see the Teleport example). His suggested fix has been adopted. Thanks!\n\n__2017/06/14 Fixed scripts on Linux and OSX__\n\nA recent change to FSharp on Linux and OSX made it impossible to incrementaly load scripts that were compiled with `/S`. We have updated the kit so that the linux directory now contains private copies of `FSharp.Core.*` which should fix the problem. \n\n__2017/04/18 Drawing Shor Circuits__\n\nWe had a request for renderings of the circuits used by the **__Shor()** command. There is now a zipped file of all the circuits in both HTML and LaTeX in [UserCode/DaveWecker](UserCode/DaveWecker) as **Shor_Render.7z**\n\n__2016/07/02 Sample implementation of Spin.Test and Stabilizer.ShowState released__\n\nIn UserCode\\DaveWecker there are two new releases of sample implementations. The first shows how to implement the Spin.Test routine that's caled by the `__Ferro()` example in LIQ\u003ci\u003eUi\u003c/i\u003e\\|\u0026#x232A;. There's also a new property on stabilizers called `Tableau` which will return the current (raw) stabilizers. See the `Tableau.fsx` sample in the same directory for further information. The [README.md](UserCode/DaveWecker/README.md) file is a good place to start.\n\n__2016/05/20 Channels/POVMs added__\n\nWe've made a major addition to the available noise models in the system by adding Channels (via Kraus operators) and Generalized Measurement (via POVMs). The Users Manual has a new\nsection under \"Advanced Noise Models\" called \"Channels and POVMs\", the API docs have been updated and there's a new built in example called `__Kraus`. A sample call would be: \n`__Kraus(1000,0.02,.02,true)` which would do 1000 runs with Amplitude Damping and Depolarizing noise. See the Users Manual for full details as well as the provided source code in `Samples\\Kraus.fsx`.\nYou can also find an example of a simple quantum game (Peres) using POVMs in the `UserCode\\MartinRoettler` directory.\n\n__2016/05/16 First Quantum Challenge Winners announced!__\n\nThe winners of the first Quantum Challenge have been announced in the [Microsoft Research Blog](https://blogs.msdn.microsoft.com/msr_er/2016/05/16/microsoft-quantum-challenge-results-are-in/).\nFull information about the entries may be found in our [GitHub repo](https://github.com/StationQ/Liquid/tree/master/QuantumChallenge/QC_1).\n\n__2016/05/03 QuAM source code released__\n\nIn UserCode\\DaveWecker there's a new release of source code for the QuAM example that's built in to LIQ\u003ci\u003eUi\u003c/i\u003e\\|\u0026#x232A;. See the [README.md](UserCode/DaveWecker/README.md) file in the same directory for details. We also exposed a few more APIs to help make this and other examples easier to code.\n\n__2016/04/23 QLSA source code released__\n\nIn UserCode\\DaveWecker there's a new release of source code for the QLSA example that's built in to LIQ\u003ci\u003eUi\u003c/i\u003e\\|\u0026#x232A;. See the [README.md](UserCode/DaveWecker/README.md) file in the same directory for details.\n\n__2016/03/11 New introduction videos__\n\nSeven new short videos have been posted to the [LIQ\u003ci\u003eUi\u003c/i\u003e\\|\u0026#x232A; Research site](http://research.microsoft.com/en-us/projects/liquid/)\n\n__2016/03/04 Outputting circuits for other Quantum Languages__\n\nWe've uploaded sample code that shows how to print out circuits for other quantum languages. This specific example shows how to parse a circuit and generate QASM code. See [UserCode example](https://github.com/StationQ/Liquid/tree/master/UserCode/DaveWecker) from DaveWecker\n\n\nAs always, we encourage you to join our (low volume) mailing list (instructions below) so you will directly receive announcements like these.\n\n## What Is LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A;?\n\nLIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; is a simulation platform developed by the [Quantum Architectures and Computation](http://research.microsoft.com/en-us/groups/quarc/) team at Microsoft Research to aid in the exploration of quantum computation. \nLIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; stands for “Language Integrated Quantum Operations”.  \nA quantum operation is usually referred to as a unitary operator (U) applied to a column state vector (also known as a ket: |\u003e).\nThe “i” is just a constant scaling factor, hence the acronym.\n\nLIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; includes three simulators: \n* A full state vector simulator that tracks the detailed evolution of the quantum state\n* A stabilizer simulator based on CHP (Aaronson and Gottesman, http://arXiv.org/abs/quant-ph/0406196)\n* A highly-optimized full state vector simulator for fermionic Hamiltonians\n\nLIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; is available under a [Microsoft Research license](LICENSE.md). \n\n## For More Information\n\nSee the [StationQ website](http://www.StationQ.com)\nand the paper, [LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A;: A Software Design Architecture and Domain-Specific Language for Quantum Computing](http://research.microsoft.com/pubs/209634/1402.4467.pdf).\n\nTo stay up to date on what we're doing with LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A;, please watch our repository and sign up for the LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; email list.\nTo sign up, send an email to LISTSERV@lists.research.microsoft.com with a one-line body reading:\n```\nSUB Liquid-news FirstName LastName\n```\nReplacing FirstName and LastName with your first and last names.\nIf you prefer to remain anonymous, you may instead send an email containing:\n```\nSUB Liquid-news anonymous\n```\n\n## How To Cite LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A;\n\nIf you use LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; in your research, please cite it as follows:\n* bibTex:\n```\n@misc{1402.4467,\n  author = {Dave Wecker and Krysta M.~Svore},\n  title = {{LIQU}i|\u003e: {A} {S}oftware {D}esign {A}rchitecture and {D}omain-{S}pecific \n            {L}anguage for {Q}uantum {C}omputing},\n  year = {2014},\n  eprint = {1402.4467},\n  url = {arXiv:1402.4467v1}\n}\n```\n* Text: \n```\nD. Wecker and K. M. Svore, “LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A;: A Software Design Architecure and Domain-Speciﬁc \n    Language for Quantum Computing,” (2014), arXiv:1402.4467v1 [quant-ph], \n    http://arxiv.org/abs/1402.4467.\n```\n\n## What Can I Do With It?\n\nYou can use LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; to define quantum circuits, render them into a variety of graphical formats, and execute them\nusing an appropriate simulator.\n\nSome of the specific algorithms you can simulate with LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; are:\n* Simple quantum teleportation\n* Shor's factoring algorithm\n* Quantum chemistry: computing the ground state energy of a molecule\n* Quantum error correction\n* Quantum associative memory (Ventura and Martinez, http://arxiv.org/abs/quant-ph/9807053)\n* Quantum linear algebra (Harrow, Hassidim, and Lloyd, http://arxiv.org/abs/0811.3171)\n\nAll of these algorithms, and many more, are included as samples with LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A;. \nA video of a recent talk  at [IQC](https://uwaterloo.ca/institute-for-quantum-computing/) on the reserach we've done with the simulator is at https://youtu.be/Q6M0ueXLTak?t=1s\n\n## How Do I Get It?\n\nYou can download the LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; executable, libraries, sample scripts, and documentation from this site.\n\nSee the [Getting Started](GettingStarted.md) page for directions on how to download and start using LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A;.\n\nIf you wish to use LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; on a Windows virtual machine,\nsee the [Using LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; on Microsoft Azure](AzureGuide.md) page for directions.\n\n## How Do I Use It?\n\nSee the [users' guide](http://stationq.github.io/Liquid/docs/LIQUiD.pdf) and the [full help documentation](http://stationq.github.io/Liquid/docs/index.html).\nThe help may also be downloaded as a [single file](http://stationq.github.io/Liquid/docs/Liquid.chm), if desired. There is also a [tutorial video](http://research.microsoft.com/apps/video/default.aspx?id=258279) available that will take you through the basics.\n\nWe've also posted seven short videos to the [LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; Research site](http://research.microsoft.com/en-us/projects/liquid/). These include:\n* [Station Q Overview](http://research.microsoft.com/apps/video/default.aspx?id=263557)\n* [LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; Simulator History](http://research.microsoft.com/apps/video/default.aspx?id=263605)\n* [The Quantum Challenge](http://research.microsoft.com/apps/video/default.aspx?id=263584)\n* [LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; Quantum Simulator QuickStart](http://research.microsoft.com/apps/video/default.aspx?id=263046)\n* [LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; Quantum Error Correction](http://research.microsoft.com/apps/video/default.aspx?id=263597)\n* [LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; Simulation Optimization](http://research.microsoft.com/apps/video/default.aspx?id=263612)\n* [LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; Quantum Chemistry](http://research.microsoft.com/apps/video/default.aspx?id=263611)\n\nNote that this version of LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; is limited to a maximum of 23 physical qubits for full state vector simulation.\n\nIf you run into a problem or have a question, you can [post an issue](https://github.com/StationQ/Liquid/issues).\nIf you have other feedback, you can contact the LIQ\u003ci\u003eUi\u003c/i\u003e|\u0026#x232A; team at liquid@microsoft.com.\n\n---\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/stationq.github.io%2FLiquid%2F","html_url":"https://awesome.ecosyste.ms/projects/stationq.github.io%2FLiquid%2F","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/stationq.github.io%2FLiquid%2F/lists"}