Skip to content
Snippets Groups Projects
Commit 1724cd59 authored by Bob Coecke's avatar Bob Coecke
Browse files
parents 71069398 161b20d4
No related branches found
No related tags found
No related merge requests found
......@@ -591,20 +591,18 @@ various themes: the relation between \zx and other quantum computing representat
Several powerful high-level languages (HLLs) have been proposed for quantum programs, such as Quipper~\cite{Alexander-S.-Green:2013fk} and \Qsharp~\cite{qsharp}.
As with classical HLLs, these languages are not designed to be run directly on quantum hardware: instead, their compilers typically output quantum circuit descriptions, which are not tailored well to run on any particular hardware platform.
Our proposed \dzxc system would represent an interface between multiple different HLLs for quantum procedures, and various quantum hardware platforms.
This system would use terms of the \zxcalculus as an internal representation of the procedure as it undergoes optimisations and translations to fit a particular hardware architecture.
Our proposed \dzxc system will represent an interface between multiple different HLLs for quantum procedures, and various quantum hardware platforms.
This system will use terms of the \zxcalculus as an internal representation of the procedure as it undergoes optimisations and translations, \newt{both abstractly and} to fit a particular hardware architecture.
This representation would not be required from or exposed to the user,\footnote{This said, the \zxcalculus has proved a very useful notation for mathematical proofs.}
but would be generated by a compiler front-end from programs written in existing high-level languages.
Therefore it is essential to provide a robust, general framework for compilation of HLLs to \zx terms.
As most existing quantum HLLs can output circuit descriptions, and as circuits can easily be represented in the \zxcalculus,
we first focus on a simple front end for the circuit language QASM~\cite{Cross2017Open-Quantum-As} in \ref{task:HHL} before moving towards more expressive HHLs.
As most existing quantum HLLs can output circuit descriptions, and as circuits can easily be represented in the \zxcalculus, \newt{in \ref{task:HHL}} we first focus on a simple front end for the circuit language QASM~\cite{Cross2017Open-Quantum-As} before moving towards more expressive HHLs.
This will allow virtually any extant quantum HLL to interface with the \dzxc system, albeit rather naively at first.
Later, we will perform concrete front-end
experiments using more sophisticated existing HLLs in, for example
\emph{Quipper}, \Qsharp~\cite{qsharp}, or ProjectQ
\cite{Steiger2016ProjectQ:-An-Op}, with the help of
Task~\ref{task:betterboxes}.
\cite{Steiger2016ProjectQ:-An-Op}, with the help of \newt{Task~\ref{task:trans1}}.
Proposed and existing quantum devices differ along a variety of axes.
At the most abstract level, the quantum circuit model and the
......@@ -621,7 +619,7 @@ modes.\REM{noise,fidelitY}
Due to the novelty of our proposal, we adopt an exploratory approach with respect to back-end models.
Initially, and in parallel, we study the circuit model (\ref{task:circuit-model}) and
the 1-way model (\ref{task:mbqc-model}) because these models are well understood, stable, and have been extensively treated in the \zxcalculus literature.
These models will allow us to prototype the development of hardware annotations for the \dzxc system.
These models will allow us to prototype the development of hardware annotations for the \dzxc system, \newt{cf.\ Task~\ref{task:runnable}}.
In both cases, this involves three tightly related tasks:
\begin{enumerate}[label=(\roman*)]
\item
......@@ -913,7 +911,25 @@ The advent of quantum computation, and the diverse set of skills needed to bring
\newt{The ICTQT is a newly founded research institute in the strongly emergent Poland. The university of Gdansk, host of the institute, has a long prominent track record on quantum information theory, with the core of entanglement theory itself having been developed there. Sainz's newly founded Foundational Underpinnings of Quantum Technologies group, strives at contributing to and complementing the existing team in Gdansk, by bringing in the new scope of process theories to tackle foundational and applied questions about quantum theory. Oxford site head Coecke was involved in establishing Sainz's new team at Gdansk's new ICTQT institute, as a member of the institutes' International Scientific Committee. With this project we involve this new institute, and Sainz's team in particular, within an established research community. The particular scope of this research proposal perfectly aligns with part of the mission statement of Sainz's team, which comprises the study of process theories, since ZX-calculus is the Swiss army knife of process theories, bringing process theory in direct contact with quantum technology. More generally, the experienced project partners will adopt a mentoring role towards this newly formed ICTQT group.}
\paragraph{Build leading innovation capacity across Europe by involvement of key actors that can make a difference in the future, for example excellent young researchers, ambitious high-tech SMEs or first-time participants ---\!\!}
\newt{The consortium team is well-balanced between young and established researchers. We are building innovation capacity by involving many excellent early-career researchers as well as several research groups that have been founded in the past few years, namely those of Horsman, Kissinger, Valiron, and Sainz (the latter shortly to be established at the proposal writing phase; see previous paragraph). The team also includes senior researchers on the brink of of group development (Backens, de Beaudrap, Wang). With team members like Coecke who had over 30 grants including several large networks, know-how on project design at the drafting stage to execution will carry over to the more junior partners, as Coecke will adopt a mentoring role throughout the project. Our industrial partner Cambridge Quantum Computing is an ambitious high-tech SME with expertise in quantum information processing and optimisation.} \bR ... Ross elaborate? ...\e
\newt{The consortium team is well-balanced between young and
established researchers. We are building innovation capacity by
involving many excellent early-career researchers as well as several
research groups that have been founded in the past few years, namely
those of Horsman, Kissinger, Valiron, and Sainz (the latter shortly
to be established at the proposal writing phase; see previous
paragraph). The team also includes senior researchers on the brink
of of group development (Backens, de Beaudrap, Wang). With team
members like Coecke who had over 30 grants including several large
networks, know-how on project design at the drafting stage to
execution will carry over to the more junior partners, as Coecke
will adopt a mentoring role throughout the project. Our industrial
partner, CQC, is an ambitious high-tech SME, who are currently leading
the sector in high performance compilation of quantum software. The
CQC team leader, Duncan, is an experienced researcher who brings
expertise in technology transfer from academia to industry. The
junior team members at CQC will benefit from exposure to the latest
research, while the younger academics will benefit from interaction
with industry.}
\subsection{Dissemination, exploitation of results, communication}
......@@ -921,7 +937,9 @@ The advent of quantum computation, and the diverse set of skills needed to bring
\paragraph{Dissemination.\!\!}
\label{sec:dissemination}
\bR personal opinion : we should be bold and say Fuck the (journal)
System. We will publish only in true open venues like Quantum.
Nature can go to hell. \e
The primary means of dissemination will be by publishing our results
in leading journals and conferences, with a strong preference for open access
venues. (We note that in computer science, the highest impact
......@@ -1146,9 +1164,11 @@ collaboration is a strong point of this project.
\WPleaderLOR
\WPeffort{0}{0}{0}{0}{0}{0}
\begin{WPaim}
This WP develops elements of \zx as in intermediate compiler language.
This includes interfaces between \zx and up to known high-level quantum languages (HLL), and down to the device level of the target technologies.
In the first instance we make contact between \zx and standard circuit and measurement-based models, in which all current quantum protocols are framed.
This WP develops elements of \zx as an abstract intermediate
compiler language. We provide interface between \zx and known
high-level quantum languages (HLL), and between \zx and standard
circuit and measurement-based models, in which all current quantum
protocols are framed.
% This WP provides multiple \emph{compiler front-ends}. We design the
% framework of interaction between high-level languages (HLL) and the
% \azx intermediate representation. We show how to compile several
......@@ -1164,24 +1184,6 @@ In the first instance we make contact between \zx and standard circuit and measu
\begin{WPtasks}
%
%
\WPtask[\label{task:circuit-model}]{Idealised quantum circuits
(M1--M9; Responsible 2; Involved: 1,3,4)}{%
Translate an \zx term to an equivalent quantum circuit with ideal
gates. This will require algorithms for discovering a suitable
causal ordering on the \zx term, and for decomposing it into
parts that represent individual gates. We will also consider
circuits with constrained width, depth and/or layout. %The output format will be QASM \cite{Cross2017Open-Quantum-As}, suitable to run on a simulator.
}
\WPtask[\label{task:mbqc-model}]{Idealised
1-Way Quantum Computation (M1--M12; Responsible 3; Involved: 1,2)}{%
Translate a \zx term to a runnable 1WQC
\cite{Raussendorf-2001} with ideal measurements and state
preparation. Since every term of the \zxcalculus can be trivially
translated to a one-way program, this task focusses on finding
\emph{deterministic} programs, subject to constraints on the size
and topology of the underlying graph states, and limits on the
number of measurement rounds. The output
language will be the Measurement Calculus \cite{DanosV:meac}.}
%
% \WPtask[\label{task:transHLL}]{Compilation from HLL (M6--M36;
% responsible 3; involved 2,4,5)}{%
......@@ -1189,14 +1191,21 @@ In the first instance we make contact between \zx and standard circuit and measu
% develop native\footnote{\emph{Native} here meaning ``not via a
% circuit translation.''} drivers for Quipper, {\liquid}, and
% possibly other languages. As well as achieving one of the key
% goals of the project, this task will also make it possible to test
% the {\azx} framework on real, possibly very large instances of
% programs. This task will progressively incorporate new features
% of the \azx language as they are developed,
% especially in concert with \ref{task:betterboxes}.
% goals of the project,
% %
% }
%
\WPtask[\label{task:HHL}]{Front-end (M3--M36; responsible 3;
involved 2,4,5) }{%
Propose compiler front-ends from known HLLs such as QASM, Quipper
or \Qsharp to \dzxc. This task serves as a test-bed
for~\ref{task:trans1} and~\ref{task:testBench}. It will make
it possible to test
the {\dzxc} framework on real, possibly very large instances of
programs. This task will progressively incorporate new features
of the \dzxc language as they are developed,
especially in concert with \ref{task:betterboxes}.
%
}
\WPtask[\label{task:trans1}]{Open API for \dzxc (M1--M36;
responsible 3; involved 2,4,5)}{%
Develop an open API for the description of ZX terms. While
......@@ -1209,15 +1218,6 @@ In the first instance we make contact between \zx and standard circuit and measu
\ref{task:betterboxes}.
%
}
%
\WPtask[\label{task:HHL}]{Front-end (M3--M36; responsible 3;
involved 2,4,5) }{%
Propose compiler front-end from known HLLs such as QASM, Quipper
or \Qsharp to \dzxc. This task serves as a test-bed
for~\ref{task:testBench} and~\ref{task:trans1}.
%
}
\WPtask[\label{task:testBench}]{Open test-suite (M3--M36;
responsible 3; involved 2,4,5) }{%
Devise test-suite of concrete instances of circuits and
......@@ -1227,6 +1227,24 @@ Devise test-suite of concrete instances of circuits and
resources, {\em etc}. % The test suite will be continually expanded as the project progresses.
%
}
\WPtask[\label{task:circuit-model}]{Idealised quantum circuits
(M1--M9; Responsible 2; Involved: 1,3,4)}{%
Translate an \zx term to an equivalent quantum circuit with ideal
gates. This will require algorithms for discovering a suitable
causal ordering on the \zx term, and for decomposing it into
parts that represent individual gates. We will also consider
circuits with constrained width, depth and/or layout. %The output format will be QASM \cite{Cross2017Open-Quantum-As}, suitable to run on a simulator.
}
\WPtask[\label{task:mbqc-model}]{Idealised
1-Way Quantum Computation (M1--M12; Responsible 3; Involved: 1,2)}{%
Translate a \zx term to a runnable 1WQC
\cite{Raussendorf-2001} with ideal measurements and state
preparation. Since every term of the \zxcalculus can be trivially
translated to a one-way program, this task focusses on finding
\emph{deterministic} programs, subject to constraints on the size
and topology of the underlying graph states, and limits on the
number of measurement rounds. The output
language will be the Measurement Calculus \cite{DanosV:meac}.}
\WPtask[\label{task:backendapi}]{Back-end API (M24--M36 Responsible: 5; Involved: 1,2,3,4)}{%
Open specification of an API for back-end modules, facilitating third-party development of specifications of target architectures, providing the \dzxc compiler with extendability to arbitrary hardware platforms.
% \BREM{
......
......@@ -309,21 +309,18 @@ Logic in Computer Science (LICS)",
Bdsk-File-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QcC4uLy4uLy4uLy4uLy4uL0RvY3VtZW50cy9SZWFkaW5nL1NjaWVuY2UvcGFwZXJzL0hcIm5lci9BIFNvZnR3YXJlIE1ldGhvZG9sb2d5IGZvciBDb21waWxpbmcgUXVhbnR1bSBQcm9ncmFtcy5wZGbSFwsYGVdOUy5kYXRhTxECYAAAAAACYAACAAAMTWFjaW50b3NoIEhEAAAAAAAAAAAAAAAAAAAAzpiHAkgrAAABxEdWH0EgU29mdHdhcmUgTWV0aG9kb2wjMUM0NDc0QS5wZGYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHER0rTWZ3FAAAAAAAAAAAABQAGAAAJIAAAAAAAAAAAAAAAAAAAAAZIXCJuZXIAEAAIAADOmHjyAAAAEQAIAADTWYGlAAAAAQAcAcRHVgAnAxkAJwMYACcDFwAKjkUACo5EAAJkfAACAGpNYWNpbnRvc2ggSEQ6VXNlcnM6AGt3YjEzMjE1OgBEb2N1bWVudHM6AFJlYWRpbmc6AFNjaWVuY2U6AHBhcGVyczoASFwibmVyOgBBIFNvZnR3YXJlIE1ldGhvZG9sIzFDNDQ3NEEucGRmAA4AdAA5AEEAIABTAG8AZgB0AHcAYQByAGUAIABNAGUAdABoAG8AZABvAGwAbwBnAHkAIABmAG8AcgAgAEMAbwBtAHAAaQBsAGkAbgBnACAAUQB1AGEAbgB0AHUAbQAgAFAAcgBvAGcAcgBhAG0AcwAuAHAAZABmAA8AGgAMAE0AYQBjAGkAbgB0AG8AcwBoACAASABEABIAcFVzZXJzL2t3YjEzMjE1L0RvY3VtZW50cy9SZWFkaW5nL1NjaWVuY2UvcGFwZXJzL0hcIm5lci9BIFNvZnR3YXJlIE1ldGhvZG9sb2d5IGZvciBDb21waWxpbmcgUXVhbnR1bSBQcm9ncmFtcy5wZGYAEwABLwAAFQACAA///wAAgAbSGxwdHlokY2xhc3NuYW1lWCRjbGFzc2VzXU5TTXV0YWJsZURhdGGjHR8gVk5TRGF0YVhOU09iamVjdNIbHCIjXE5TRGljdGlvbmFyeaIiIF8QD05TS2V5ZWRBcmNoaXZlctEmJ1Ryb290gAEACAARABoAIwAtADIANwBAAEYATQBVAGAAZwBqAGwAbgBxAHMAdQB3AIQAjgEBAQYBDgNyA3QDeQOEA40DmwOfA6YDrwO0A8EDxAPWA9kD3gAAAAAAAAIBAAAAAAAAACgAAAAAAAAAAAAAAAAAAAPg}}
 
@article{Steiger2016ProjectQ:-An-Op,
Author = {Damian S. Steiger and Thomas H\"aner and Matthias Troyer},
Citation_Arxiv_Id = {1612.08091},
Citation_Author = {Troyer, Matthias},
Citation_Date = {2016/12/23},
Citation_Online_Date = {2016/12/23},
Citation_Pdf_Url = {http://arxiv.org/pdf/1612.08091},
Citation_Title = {ProjectQ: An Open Source Software Framework for Quantum Computing},
Date-Added = {2017-03-04 12:53:09 +0000},
Date-Modified = {2017-03-06 05:51:14 +0000},
Eprint = {arXiv:1612.08091},
Journal = {arXiv.org},
Number = {1612.08091},
Title = {{ProjectQ}: An Open Source Software Framework for Quantum Computing},
Year = {2016},
Bdsk-File-1 = {YnBsaXN0MDDUAQIDBAUGJCVYJHZlcnNpb25YJG9iamVjdHNZJGFyY2hpdmVyVCR0b3ASAAGGoKgHCBMUFRYaIVUkbnVsbNMJCgsMDxJXTlMua2V5c1pOUy5vYmplY3RzViRjbGFzc6INDoACgAOiEBGABIAFgAdccmVsYXRpdmVQYXRoWWFsaWFzRGF0YV8QZi4uLy4uLy4uLy4uLy4uL0RvY3VtZW50cy9SZWFkaW5nL1NjaWVuY2UvcGFwZXJzL1N0ZWlnZXIvUHJvamVjdFEgQW4gT3BlbiBTb3VyY2UgU29mdHdhcmUgRnJhbWV3b3JrLnBkZtIXCxgZV05TLmRhdGFPEQJEAAAAAAJEAAIAAAxNYWNpbnRvc2ggSEQAAAAAAAAAAAAAAAAAAADOmIcCSCsAAAHERzIfUHJvamVjdFEgQW4gT3BlbiBTbyMxQzQ0NzAxLnBkZgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAcRHAdSI0foAAAAAAAAAAAAFAAYAAAkgAAAAAAAAAAAAAAAAAAAAB1N0ZWlnZXIAABAACAAAzph48gAAABEACAAA1IjD6gAAAAEAHAHERzIAJwMZACcDGAAnAxcACo5FAAqORAACZHwAAgBrTWFjaW50b3NoIEhEOlVzZXJzOgBrd2IxMzIxNToARG9jdW1lbnRzOgBSZWFkaW5nOgBTY2llbmNlOgBwYXBlcnM6AFN0ZWlnZXI6AFByb2plY3RRIEFuIE9wZW4gU28jMUM0NDcwMS5wZGYAAA4AXgAuAFAAcgBvAGoAZQBjAHQAUQAgAEEAbgAgAE8AcABlAG4AIABTAG8AdQByAGMAZQAgAFMAbwBmAHQAdwBhAHIAZQAgAEYAcgBhAG0AZQB3AG8AcgBrAC4AcABkAGYADwAaAAwATQBhAGMAaQBuAHQAbwBzAGgAIABIAEQAEgBmVXNlcnMva3diMTMyMTUvRG9jdW1lbnRzL1JlYWRpbmcvU2NpZW5jZS9wYXBlcnMvU3RlaWdlci9Qcm9qZWN0USBBbiBPcGVuIFNvdXJjZSBTb2Z0d2FyZSBGcmFtZXdvcmsucGRmABMAAS8AABUAAgAP//8AAIAG0hscHR5aJGNsYXNzbmFtZVgkY2xhc3Nlc11OU011dGFibGVEYXRhox0fIFZOU0RhdGFYTlNPYmplY3TSGxwiI1xOU0RpY3Rpb25hcnmiIiBfEA9OU0tleWVkQXJjaGl2ZXLRJidUcm9vdIABAAgAEQAaACMALQAyADcAQABGAE0AVQBgAGcAagBsAG4AcQBzAHUAdwCEAI4A9wD8AQQDTANOA1MDXgNnA3UDeQOAA4kDjgObA54DsAOzA7gAAAAAAAACAQAAAAAAAAAoAAAAAAAAAAAAAAAAAAADug==}}
doi = {10.22331/q-2018-01-31-49},
title = {Project{Q}: an open source software framework for quantum computing},
author = {Steiger, Damian S. and H{\"{a}}ner, Thomas and Troyer, Matthias},
journal = {{Quantum}},
issn = {2521-327X},
publisher = {{Verein zur F{\"{o}}rderung des Open Access Publizierens in den Quantenwissenschaften}},
volume = {2},
pages = {49},
month = jan,
year = {2018}
}
 
@article{1703.00466,
Author = {J.~Bermejo-Vega and D.~Hangleiter and M.~Schwarz and R.~Raussendorf and J.~Eisert},
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment