diff --git a/NEWPROPOSAL/FULLPROP.tex b/NEWPROPOSAL/FULLPROP.tex index b27c6319f80b7c6cd9e7f529061aab03b64ec875..33e25e0d70479fdf2d4664457523afc132baaee4 100644 --- a/NEWPROPOSAL/FULLPROP.tex +++ b/NEWPROPOSAL/FULLPROP.tex @@ -1166,9 +1166,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 @@ -1184,24 +1186,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)}{% @@ -1209,14 +1193,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 @@ -1229,15 +1220,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 @@ -1247,6 +1229,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{