qsharp icon indicating copy to clipboard operation
qsharp copied to clipboard

Migrate more katas to quantum.microsoft.com

Open tcNickolas opened this issue 1 year ago • 17 comments
trafficstars

There are multiple katas in the Quantum Katas project that cannot be used with the modern QDK, and are straightforward to migrate to the new katas experience. I don't have detailed notes for each of them, so I think we can track them all in this one issue.

  • [x] BasicGates: makes sense to split it, add tasks 1.1-1.7 to the end of the Single-Qubit Gates kata, 1.8-1.10 - to the end of the Multi-Qubit Systems kata, 2.1-2.6 - to Multi-Qubit Gates kata
  • [x] Superposition: I started migration already, need to finish the rest of the tasks (I've updated the infrastructure to support solutions without adjoint, so we can migrate all content)
  • [ ] Measurements (renamed to Distinguishing Quantum States): add as a standalone kata after Multi-Qubit Measurements, testing infra should be similar to that one
  • [ ] DistinguishUnitaries: add as a standalone kata after Measurements, needs its own infra but should be similar to existing Measurements
  • [ ] Teleportation: add after DistinguishUnitaries
  • [x] SuperdenseCoding: add after Teleportation
  • [ ] MarkingOracles: add after existing Oracles kata, see issues https://github.com/microsoft/qsharp/issues/1156 and https://github.com/microsoft/qsharp/issues/1159 for potential extra tasks to be added

tcNickolas avatar Feb 21 '24 20:02 tcNickolas

I will be working on migrating Superposition Kata - Task 1.6 (Bell state)

jkingdon-ms avatar Feb 22 '24 19:02 jkingdon-ms

I will be working on migrating Superposition Kata - Task 1.7 (All Bell states)

jkingdon-ms avatar Mar 13 '24 00:03 jkingdon-ms

I will be working on migrating Superposition Kata - Tasks 1.8, 1.9, 1.10

jkingdon-ms avatar Mar 20 '24 01:03 jkingdon-ms

I will be working on migrating Superdense Coding Kata

SakthiVijayS avatar Mar 21 '24 19:03 SakthiVijayS

I will be working on migrating tasks 1.1-1.7 to Single-Qubit Gates, tasks 1.8-1.10 to Multi-Qubit Systems, tasks 2.1-2.6 to Multi-Qubit Gates.

WWhitedogi avatar Mar 29 '24 21:03 WWhitedogi

I will be working on migrating Superposition Kata - Tasks 1.11, 1.12

jkingdon-ms avatar Apr 12 '24 19:04 jkingdon-ms

I am working on Superposition Task 1.13

frtibble avatar Apr 13 '24 11:04 frtibble

I am working on migration of Teleportation Kata

devikamehra avatar Apr 21 '24 19:04 devikamehra

@tcNickolas, I would like to pick SuperDenseCoding kata

Manvi-Agrawal avatar Apr 21 '24 22:04 Manvi-Agrawal

I will be working on migrating Superposition Kata - Tasks 2.2, 2.3

jkingdon-ms avatar Apr 22 '24 14:04 jkingdon-ms

For everyone who will work on a task that relies on the previous tasks' solutions (and we're getting there with teleport and superdense coding protocols): with the current infrastructure, each task of a kata is independent and has no access to the code cells for other tasks.

As a workaround, we can copy-paste the solutions for the tasks on which the current task depends in the placeholder, so that the learner can access them without doing the copy-paste themselves. For example, in the QEC kata I'm working on, encoding task for Shor code uses encoding task for bit flip code, and the placeholder looks like this:

namespace Kata {
    operation ShorEncode (qs : Qubit[]) : Unit is Adj + Ctl {
        // Implement your solution here...
        
    }

    // You might find this helper operation from an earlier task useful.
    operation BitflipEncode (qs : Qubit[]) : Unit is Adj + Ctl {
        CNOT(qs[0], qs[1]);
        CNOT(qs[0], qs[2]);
    }
}

tcNickolas avatar Apr 22 '24 15:04 tcNickolas

I'll work on Superposition Task 2.4 and 2.5

frtibble avatar Apr 23 '24 08:04 frtibble

I will start migrating Measurements tasks 2.1-2.3

JPark1023 avatar Apr 24 '24 16:04 JPark1023

I will work on Superposition task 1.14 and 2.6

frtibble avatar Apr 30 '24 10:04 frtibble

I am working on migrating task 1.3 from Workbook_Measurements to Distinguishing States Kata.

moumita-halder avatar May 07 '24 21:05 moumita-halder

I will be working on migrating Distinguish Unitaries Kata - Tasks 1.2, 1.3, 1.4

jkingdon-ms avatar May 10 '24 22:05 jkingdon-ms

I will be working on migrating Distinguish Unitaries Kata - Tasks 1.x (remaining 1.5 - 1.11)

jkingdon-ms avatar May 21 '24 18:05 jkingdon-ms

I will be working on migrating Distinguish Unitaries Kata - Tasks 2.x

jkingdon-ms avatar May 29 '24 18:05 jkingdon-ms

I will be working on the remainder of MarkingOracles.

jkingdon-ms avatar Jun 05 '24 19:06 jkingdon-ms

I am migrating tasks 1.4, 1.5 & 1.6 from the Measurements workbook to Distinguishing States Kata.

moumita-halder avatar Jun 06 '24 00:06 moumita-halder

I am migrating tasks 1.10-1.15 from Measurements to Distinguishing States kata.

moumita-halder avatar Jun 08 '24 10:06 moumita-halder

I am migrating tasks 1.07-1.09 from Measurements to Distinguishing States kata.

moumita-halder avatar Jun 12 '24 08:06 moumita-halder

And with the PR #1638 merged last night I declare this issue completed!

Thank you again to everybody who worked on this!!!

tcNickolas avatar Jun 13 '24 14:06 tcNickolas