Homework Task
Implement a classical arithmetic function on the IBM quantum computer. Document and unit test. Determine the limitation of the used quantum computer for your implementation.
For this you have to complete the following steps:
- Discuss in this repository using issus which arithmetic function you want to implement
- Discuss with the other groups using issues which function they implement. Each group should implement a different function.
- Discuss in this repository using issues who will do which task (developing algorithm, documentation, unit test)
- Discuss who should be the main responsible for the repository (the one that can accept merge requests, let me know in discord so I can adjust rights)
- Discuss and generate labels for your issues
- Fork this repository
- Generate the necessary files for your task and commit them. Commmit not just the final result but also intermediete steps. (Think of it like saving the file. Everytime you save, commit)
- create merge requests for your work
While you're working on it you will probably run into multiple issues. Generate issues for them and discuss solutions. Also check repositories of the other groups. Examples for issues you will probably face:
- Which development environment should I use (google colab, IBM quantum, my personal computer)
- How to interact with the IBM quantum quantum computer
- How to solve merge conflicts
- How do I undo a commit
- ...
Also use discord for discussing solutions to any issues popping up.
Task descriptions
Algorithm:
- do not commmit your IBM quantum API key!
- generate the necessary files to run the code, not just the function
Documentation:
- markdown file explaining how to run the code
- docstrings inside the python file
Unit Test:
- Code for the unit test
- Add example of unit test to documentation file how to run the code
Grading
Homework Points |
|
|
|
|
|
|
|
Interaction on own project |
|
|
|
Category |
min per person |
point factor |
max points |
Commits |
3 |
1 |
3 |
Merge requests |
2 |
1 |
2 |
Merge Accepted |
0 |
1 |
0 |
Branches |
5 |
0.5 |
2.5 |
Issues |
21 |
0.5 |
10.5 |
Closed Issues |
15 |
0.3 |
4.5 |
# Conversations |
25 |
0.2 |
5 |
|
|
|
|
Total |
71 |
|
27.5 |
|
|
|
|
Shared project points |
|
|
|
# Label |
10 |
0.2 |
2 |
# Milestones |
0 |
1 |
0 |
# Tags |
0 |
1 |
0 |
|
|
|
|
Total |
10 |
|
2 |
|
|
|
|
|
|
|
|
Interaction on others project(s) |
|
|
|
Category |
min per person |
point factor |
max points |
Commits |
2 |
1 |
2 |
Branches |
1 |
0.5 |
0.5 |
Issues |
4 |
0.5 |
2 |
# Conversations |
15 |
0.2 |
3 |
|
|
|
|
Total |
22 |
|
7.5 |
|
|
|
|
Result |
|
|
|
Task completion |
5 |
1 |
5 |
|
|
|
|
Sum |
|
|
42 |