Q#

 Like

Q# (pronounced as Q sharp) is a domain-specific programming language used for expressing quantum algorithms. It was initially released to the public by Microsoft as part of the Quantum Development Kit.

License model

  • FreeOpen Source

Application type

Country of Origin

  • US flagUnited States

Platforms

  • Mac
  • Windows
  • Linux
  • BSD
  No rating
0likes
0comments
0news articles

Features

Suggest and vote on features
  1.  Ad-free

 Tags

Q# News & Activities

Highlights All activities

Recent activities

Show all activities

Q# information

  • Developed by

    US flagMicrosoft
  • Licensing

    Open Source (MIT) and Free product.
  • Alternatives

    53 alternatives listed
  • Supported Languages

    • English

AlternativeTo Category

Development

GitHub repository

  •  241 Stars
  •  56 Forks
  •  42 Open Issues
  •   Updated Jan 12, 2024 (Archived)
View on GitHub

Popular alternatives

View all

Our users have written 0 comments and reviews about Q#, and it has gotten 0 likes

Q# was added to AlternativeTo by Bit m0 on Jul 7, 2023 and this page was last updated Jul 7, 2023.
No comments or reviews, maybe you want to be first?
Post comment/review

What is Q#?

The Q# quantum programming language is part of Microsoft's Quantum Development Kit, which provides rich IDE support and tools for program visualization and analysis. With Q# and the Quantum Development Kit (QDK) you can write your quantum programs and run them on real quantum hardware using Azure Quantum.

Q# is an open-source, high-level, programming language for developing and running quantum algorithms. It’s part of the Quantum Development Kit (QDK) and it's designed to be hardware agnostic, scale to the full range of quantum applications, and to optimize execution. For more information on the Q# language development project, see the Q# and core libraries design repository on GitHub.

As a programming language, Q# draws familiar elements from Python, C#, and F#, and supports a basic procedural model for writing programs with loops, if/then statements, and common data types. It also introduces new quantum-specific data structures and operations, such as repeat-until-success and adaptive phase estimation, which allow the integration of quantum and classical computations. For example, the flow control of a classical program can be based on the outcome of a quantum measurement. Q# is a standalone language offering a high level of abstraction. There is no notion of a quantum state or a circuit; instead, Q# implements programs in terms of statements and expressions, much like classical programming languages. Distinct quantum capabilities, such as support for functors and control-flow constructs, facilitate expressing, for example, phase estimation and quantum chemistry algorithms.

The Q# language supports the integration of rich classical and quantum computing. This allows clean expression of adaptive algorithms such as the random walk phase estimation operation that are difficult to express directly in the circuit model of a fixed sequence of quantum gates.

Q# supports general classical flow control during the execution of an algorithm. In particular, classical flow control is based on quantum measurement outcomes, which makes it much easier to write things that depend on intermediate measurements. For instance, the loop required for probabilistic algorithms such as Grover search can easily be expressed in Q#, rather than having to return to the classical driver to test whether the result satisfies the oracle and rerunning if not

Q# Videos

Show 1 more video

Official Links